@font-face{font-family:FCHand;src:url('assets/fonts/patrick_hand.ttf') format('truetype');font-display:swap}
@font-face{font-family:FCDisplay;src:url('assets/fonts/granesta.ttf') format('truetype');font-display:swap}
@font-face{font-family:FCScan;src:url('assets/fonts/scanport.ttf') format('truetype');font-display:swap}
@font-face{font-family:FCStars;src:url('assets/fonts/from_the_stars.otf') format('opentype');font-display:swap}

:root{color-scheme:dark;--night:#100d0b;--ink:#2a2018;--gold:#f2c15d;--cyan:#2aa6a4;--magenta:#b94a43;--victory:#4fa26d;--danger:#e3574d;--text:#fff7e8;--muted:#d1bfa8;--cream:#fff7e8;--p170-ink:#100d0b;--p170-panel:rgba(42,32,24,.94);--p170-panel2:rgba(29,24,20,.96);--p170-cream:#fff7e8;--p170-muted:#d1bfa8;--p170-gold:#f2c15d;--p170-cyan:#2aa6a4;--p170-tertiary:#b94a43;--p170-green:#4fa26d;--p170-red:#e3574d}
html,body,button,input,select,textarea{font-family:FCHand,"Trebuchet MS",sans-serif}
html,body{width:100%;height:100%;min-height:100%;background:#020408}
body{overflow:hidden;display:grid;place-items:start center}
#app{width:100%;height:100dvh;min-height:0}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--p170-cyan);outline-offset:3px}
.game-root{width:min(100vw,52dvh,560px)!important;max-width:560px!important;height:100dvh!important;min-height:0!important;margin:0 auto!important;overflow:hidden!important;box-shadow:0 0 80px #000!important;background:#020408}
.screen{min-height:0!important;height:100dvh!important}
.screen-scroll{height:100dvh!important;min-height:0!important;-webkit-overflow-scrolling:touch}
.a79-page,.feature-content,.store-content,.recruit-content,.catalog-content,.meta-content,.settings-content,.p170-page{width:100%;max-width:none;margin-inline:auto}
.a79-headcopy h1,.a79-section-title,.a79-form-head b,.a79-room-action-title,.a79-rank-name,.a79-recruit-pack b,.a79-team-label b,.a79-store-item h3,.feature-title,.rank-name,.store-section-title{font-family:FCDisplay,FCHand,sans-serif!important;letter-spacing:.025em}
.a79-screen .arena-bg,.feature-screen .arena-bg{filter:saturate(.95) brightness(.74)}
.a79-glass,.feature-card,.paint-panel{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.a79-choice,.a79-big-btn,.feature-btn,.paint-button,.p170-home-tile{min-height:44px}

/* Home */
.p170-home-scroll{padding-bottom:calc(32px + env(safe-area-inset-bottom))}
.p170-home{width:100%;margin:auto;padding:max(12px,env(safe-area-inset-top)) 12px 34px}
.p170-profile-bar{height:86px;display:grid;grid-template-columns:82px minmax(190px,1fr) 70px;gap:14px;align-items:center;margin-bottom:18px}
.p170-profile-bar button{height:74px;border:0;color:white;background-color:transparent;cursor:pointer}
.p170-avatar{position:relative;display:grid;place-items:center;padding:7px}
.p170-avatar>span{width:58px;height:58px;padding:6px;display:grid;place-items:center}
.p170-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.p170-avatar>b{position:absolute;right:1px;bottom:0;width:29px;height:29px;border:2px solid var(--p170-cream);background:#17140f;border-radius:50%;display:grid;place-items:center;font-size:13px;color:var(--p170-cream)}
.p170-cash{display:flex;align-items:center;justify-content:center;gap:11px}
.p170-cash img{width:43px;height:43px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(255,196,92,.35))}
.p170-cash strong{font-family:FCDisplay;font-size:29px;color:var(--p170-gold)}
.p170-cash span{font-size:11px;color:#d4d8dd;letter-spacing:.12em}
.p170-settings{display:grid;place-items:center;padding:16px}
.p170-settings img{width:42px;height:42px;object-fit:contain;filter:brightness(0) invert(1) sepia(.25)}
.p170-mode-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;gap:15px}
.p170-home-tile{position:relative;height:174px;border:1px solid rgba(243,214,154,.76);border-radius:2px;overflow:hidden;background:linear-gradient(140deg,rgba(27,19,14,.96),rgba(8,15,20,.91)),url('assets/ui/fc_ui_name_rect.png') center/100% 100% no-repeat;color:#fff;text-align:left;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.32),inset 0 0 0 2px rgba(255,255,255,.025)}
.p170-home-tile::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 22%,color-mix(in srgb,var(--tone),transparent 58%),transparent 46%),linear-gradient(90deg,var(--tone),transparent 1.5%);opacity:.7}
.p170-home-tile::after{content:"";position:absolute;right:-1px;bottom:-1px;border-style:solid;border-width:0 0 25px 25px;border-color:transparent transparent var(--tone) transparent}
.p170-home-tile:hover{transform:translateY(-2px);border-color:#fff2cf;box-shadow:0 16px 34px rgba(0,0,0,.42),0 0 24px color-mix(in srgb,var(--tone),transparent 78%)}
.p170-home-tile:active{transform:scale(.992)}
.p170-home-tile img{position:absolute;right:8%;top:10%;width:42%;height:58%;object-fit:contain;filter:brightness(0) invert(1) sepia(.2);opacity:.88}
.p170-tile-copy{position:absolute;left:24px;right:18px;bottom:23px;z-index:2}
.p170-tile-copy b{display:block;font-family:FCDisplay;font-size:clamp(20px,2.2vw,29px);line-height:1;text-transform:uppercase;white-space:nowrap}
.p170-tile-copy small{display:block;margin-top:7px;font-size:12px;letter-spacing:.08em;color:#e4e6e8}
.p170-home-tile.hero,.p170-home-tile.wide{grid-column:span 2}
.p170-home-tile.hero{height:198px}
.p170-home-tile.campaign{height:198px}
.p170-home-tile.short{height:125px}
.p170-mini-stack{height:174px;display:grid;grid-template-rows:1fr 1fr;gap:15px}
.p170-mini-stack .p170-home-tile{height:auto}
.p170-mini-stack .p170-home-tile img{width:29%;height:66%;top:14%}
.p170-mini-stack .p170-tile-copy{left:18px;bottom:13px}
.p170-mini-stack .p170-tile-copy b{font-size:20px}.p170-mini-stack .p170-tile-copy small{font-size:9px;margin-top:3px}

/* Universal headers and feature layouts */
.p170-page{padding:max(12px,env(safe-area-inset-top)) clamp(14px,3vw,30px) 42px}
.p170-header{min-height:82px;display:grid;grid-template-columns:62px minmax(0,1fr) 62px;align-items:center;text-align:center;gap:12px;color:white}
.p170-header>div span{display:block;font-size:11px;letter-spacing:.18em;color:var(--p170-gold)}
.p170-header h1{font-family:FCDisplay;margin:0;font-size:clamp(30px,4vw,48px);line-height:1;color:var(--p170-cream);letter-spacing:.035em}
.p170-back,.p170-refresh{width:58px;height:58px;border:0;background-color:transparent;color:var(--p170-cream);cursor:pointer;display:grid;place-items:center}
.p170-back{background:url('assets/ui/fc_ui_arrow_paint.png') center/contain no-repeat;transform:rotate(90deg);filter:brightness(0) invert(1) sepia(.2)}
.p170-refresh{font-size:31px;background:url('assets/ui/fc_ui_circle_paint.png') center/100% 100% no-repeat;padding:12px}
.p170-message{max-width:620px;margin:12vh auto 0;padding:34px;text-align:center;color:white}
.p170-message h2{font-family:FCDisplay;color:var(--p170-cream);font-size:32px;margin:0 0 8px}
.p170-fixed-theme{min-height:92px;display:flex;align-items:center;gap:16px;padding:10px 14px;margin-bottom:15px;border:1px solid rgba(242,193,93,.42);background:linear-gradient(110deg,rgba(16,13,11,.92),rgba(42,32,24,.82))}.p170-fixed-theme img{width:68px;height:68px;object-fit:contain;filter:sepia(.18) drop-shadow(0 0 8px rgba(242,193,93,.25))}.p170-fixed-theme span{display:flex;flex-direction:column}.p170-fixed-theme small{font-size:9px;letter-spacing:.14em;color:var(--p170-cyan)}.p170-fixed-theme b{font-family:FCDisplay;font-size:25px;color:var(--p170-cream)}.p170-fixed-theme em{font-style:normal;font-size:9px;color:#d1bfa8;letter-spacing:.08em}

/* Campaign */
.p170-campaign-screen .arena-bg{inset:0!important;width:100%!important;height:100%!important;animation:none!important;filter:saturate(.78) brightness(.45)!important}
.p170-campaign-screen .arena-shade{background:linear-gradient(180deg,rgba(3,14,19,.28),rgba(1,9,13,.18) 45%,rgba(1,7,10,.7))}
.p170-campaign-scroll{padding-bottom:calc(122px + env(safe-area-inset-bottom))}
.p170-campaign{width:min(100%,1040px);margin:auto;padding:max(8px,env(safe-area-inset-top)) clamp(10px,2.5vw,26px) 110px;position:relative;z-index:4}
.p170-campaign .p170-header{position:relative;background:linear-gradient(90deg,transparent,rgba(5,22,28,.88),transparent);margin:0 0 8px}
.p170-energy{height:88px;display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:15px;padding:10px 18px!important;border:1px solid rgba(243,214,154,.52);background:rgba(5,18,23,.9)!important;color:white}
.p170-energy>img{width:58px;height:58px;object-fit:contain}
.p170-energy b{display:block;font-family:FCDisplay;color:var(--p170-cream);font-size:17px}
.p170-energy strong{color:#e5e7ea;font-size:16px}
.p170-energy-pips{display:flex;gap:8px;margin-top:7px}
.p170-energy-pips i{display:block;width:66px;height:15px;border:2px solid rgba(243,214,154,.48);border-radius:20px;background:rgba(255,255,255,.06)}
.p170-energy-pips i.full{background:#5de0b3;border-color:#89f0ce;box-shadow:0 0 12px rgba(92,225,161,.3)}
.p170-chapters{display:flex;gap:10px;overflow-x:auto;padding:14px 0 15px;scrollbar-width:none;scroll-snap-type:x proximity}
.p170-chapters::-webkit-scrollbar{display:none}
.p170-chapters button{flex:0 0 112px;min-height:66px;border:1px solid rgba(243,214,154,.34);background:rgba(7,18,23,.9);color:#bbb;border-radius:14px;display:flex;align-items:center;gap:8px;padding:8px 10px;scroll-snap-align:start;cursor:pointer}
.p170-chapters button span{font-family:FCDisplay;font-size:30px;color:var(--p170-cream)}
.p170-chapters button small{font-size:9px;line-height:1.05;text-align:left;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.p170-chapters button.on{background:var(--p170-cream);color:#19120b;border-color:#fff2c8;box-shadow:0 0 18px rgba(255,196,92,.23)}
.p170-chapters button.on span{color:#15100c}.p170-chapters button:disabled{opacity:.34;cursor:default}
.p170-chapter-intro{position:relative;background:linear-gradient(145deg,rgba(238,213,167,.97),rgba(215,189,139,.97));color:#261c13;padding:22px clamp(18px,5vw,52px);text-align:center;clip-path:polygon(3% 0,97% 0,100% 12%,97% 100%,3% 100%,0 88%);box-shadow:0 12px 30px rgba(0,0,0,.3)}
.p170-chapter-intro small,.p170-chapter-intro b{font-family:FCScan;letter-spacing:.08em}.p170-chapter-intro h2{font-family:FCDisplay;font-size:clamp(31px,5vw,48px);line-height:1;margin:5px 0 8px}.p170-chapter-intro p{font-size:15px;line-height:1.24;max-width:760px;margin:0 auto 10px}.p170-chapter-intro b{color:#714d22;font-size:12px}
.p170-gang-banner,.p170-gang-sworn{width:100%;min-height:92px;margin:18px 0 4px;border:1px solid var(--p170-cream);background:rgba(4,19,25,.96)!important;display:grid;grid-template-columns:68px 1fr 34px;gap:12px;align-items:center;text-align:left;padding:10px 17px!important;color:white;cursor:pointer}
.p170-gang-banner img,.p170-gang-sworn img{width:62px;height:62px;object-fit:contain}.p170-gang-banner b,.p170-gang-sworn b{font-family:FCDisplay;color:var(--p170-cream);font-size:23px}.p170-gang-banner small,.p170-gang-sworn small{display:block;color:#d9dde1;font-size:11px}.p170-gang-banner strong{font-size:40px;color:var(--p170-cream)}
.p170-gang-sworn{grid-template-columns:64px 1fr;cursor:default}.p170-gang-sworn img{border-radius:50%}
.p170-map{position:relative;height:var(--map-height);min-height:740px;margin-top:10px;background:linear-gradient(90deg,rgba(0,0,0,.2),transparent 20% 80%,rgba(0,0,0,.2)),url('assets/campaign/fc_campaign_map.png') center top/100% auto repeat-y;border-inline:1px solid rgba(243,214,154,.16);overflow:hidden}
.p170-map::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,transparent 40%,rgba(0,6,8,.3));pointer-events:none}
.p170-map svg{position:absolute;z-index:1;inset:0;width:100%;height:100%;overflow:visible}
.p170-map path{fill:none;stroke:rgba(142,122,76,.32);stroke-width:8;stroke-linecap:round;filter:drop-shadow(0 2px 3px #000)}
.p170-map path.active{stroke:#ffc44f;filter:drop-shadow(0 0 6px #ffad29)}
.p170-map path.closed{stroke:rgba(92,82,70,.18);stroke-dasharray:16 18;filter:none}
.p170-map-node{position:absolute;z-index:3;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:176px;border:0;background:transparent;color:white;cursor:pointer;display:flex;flex-direction:column;align-items:center;padding:0}
.p170-map-node:disabled{cursor:default}
.p170-node-ring{position:relative;width:142px;height:142px;border-radius:50%;padding:9px;background:#09161c;border:3px solid var(--p170-cream);box-shadow:0 0 0 8px rgba(6,17,22,.82),0 0 0 10px rgba(243,214,154,.28),0 10px 24px #000;overflow:visible}
.p170-map-node.unlocked .p170-node-ring{border-color:var(--p170-cyan);box-shadow:0 0 0 8px rgba(6,17,22,.88),0 0 0 10px var(--p170-cream),0 0 25px rgba(45,220,255,.32)}
.p170-map-node.complete .p170-node-ring{border-color:var(--p170-green);box-shadow:0 0 0 8px rgba(6,17,22,.88),0 0 0 10px var(--p170-cream),0 0 27px rgba(92,225,161,.34)}
.p170-map-node.locked{filter:grayscale(.7) brightness(.55);opacity:.72}.p170-map-node.excluded{filter:grayscale(1) brightness(.36);opacity:.46}
.p170-map-node.boss .p170-node-ring{width:164px;height:164px;border-width:5px;box-shadow:0 0 0 9px rgba(6,17,22,.92),0 0 0 12px var(--p170-gold),0 0 35px rgba(255,93,98,.36)}
.p170-place-art{display:block;width:100%;height:100%;border-radius:50%;background-image:var(--place);background-size:400% 200%;background-position:var(--px) var(--py);background-repeat:no-repeat;overflow:hidden}
.p170-node-ring>i,.p170-node-ring>em{position:absolute;z-index:4;width:38px;height:38px;border-radius:50%;border:2px solid var(--p170-cream);background:#0b1a20;color:var(--p170-cream);display:grid;place-items:center;font-style:normal;font-family:FCDisplay;box-shadow:0 4px 8px #000}
.p170-node-ring>i{left:50%;top:-18px;transform:translateX(-50%);font-size:20px}.p170-node-ring>em{left:50%;bottom:-18px;transform:translateX(-50%);font-size:18px}.p170-map-node.complete .p170-node-ring>em{color:var(--p170-green);border-color:var(--p170-green)}
.p170-node-label{width:176px;min-height:59px;margin-top:16px;background:rgba(5,19,25,.96);border:2px solid var(--p170-cream);padding:7px 9px;clip-path:polygon(6% 0,94% 0,100% 18%,100% 100%,6% 100%,0 82%,0 0)}
.p170-node-label>b{display:block;font-family:FCDisplay;font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p170-node-label>small{display:flex;justify-content:center;flex-wrap:wrap;gap:5px;color:var(--p170-gold);font-size:10px;margin-top:3px}.p170-node-label small span{display:inline-flex;align-items:center;gap:3px}.p170-node-label small img{width:17px;height:17px;object-fit:contain}.p170-node-label small .card img{border-radius:3px}
.p170-chapter-chest{position:fixed;z-index:120;left:50%;bottom:max(9px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(620px,calc(100vw - 24px));height:92px;border:2px solid var(--p170-cream);background:linear-gradient(120deg,rgba(5,20,26,.98),rgba(21,15,10,.98));color:white;display:flex;align-items:center;justify-content:center;gap:15px;box-shadow:0 -10px 34px rgba(0,0,0,.58);cursor:pointer}
.p170-chapter-chest img{width:82px;height:82px;object-fit:contain}.p170-chapter-chest small{display:block;font-size:10px;letter-spacing:.12em}.p170-chapter-chest b{font-family:FCDisplay;font-size:22px;color:var(--p170-gold)}.p170-chapter-chest.ready{box-shadow:0 0 23px rgba(255,196,92,.48),0 -10px 34px rgba(0,0,0,.58)}.p170-chapter-chest:disabled{cursor:default;filter:saturate(.45);opacity:.76}.p170-chapter-chest.claimed{opacity:.7}

/* Campaign dialogue and gangs */
.p170-modal-layer{position:fixed;z-index:250;inset:0;background:rgba(0,4,7,.84);display:grid;place-items:center;padding:clamp(10px,3vw,28px);backdrop-filter:blur(7px)}
.p170-encounter-modal,.p170-gang-modal{position:relative;width:min(940px,100%);max-height:calc(100dvh - 28px);overflow-y:auto;background:linear-gradient(155deg,#102229,#071318 72%);border:2px solid var(--p170-cream);color:white;padding:clamp(18px,3vw,32px);box-shadow:0 24px 80px #000}
.p170-modal-close{position:absolute;right:12px;top:12px;z-index:4;width:48px;height:48px;border:1px solid rgba(255,255,255,.22);background:#050a0d;color:white;font-size:28px;cursor:pointer}
.p170-encounter-hero{display:grid;grid-template-columns:160px 1fr;align-items:center;gap:24px;padding-right:48px}.p170-encounter-hero>.p170-place-art{width:150px;height:150px;border:5px solid var(--p170-cream);box-shadow:0 0 0 7px #07161c,0 0 22px rgba(255,196,92,.27)}.p170-encounter-hero span{color:var(--p170-gold);font-size:12px;letter-spacing:.1em}.p170-encounter-hero h2{font-family:FCDisplay;font-size:clamp(34px,5vw,54px);line-height:1;margin:5px 0}.p170-encounter-hero b{font-size:17px;color:#e5e8eb}.p170-lore{font-size:17px;line-height:1.3;color:#d8dde0;border-block:1px solid rgba(243,214,154,.28);padding:15px 2px}
.p170-dialogues{display:grid;gap:10px}.p170-dialogues article{display:grid;grid-template-columns:74px 1fr;gap:13px;align-items:center;background:rgba(255,255,255,.035);border-left:3px solid var(--p170-cyan);padding:9px 12px}.p170-dialogues article:nth-child(2){border-color:var(--p170-red)}.p170-dialogues b{font-family:FCDisplay;color:var(--p170-cream);font-size:19px}.p170-dialogues p{margin:2px 0;color:#e1e4e6;font-size:14px;line-height:1.22}
.p170-dialogue-avatar{width:64px;height:64px;border-radius:50%;border:2px solid var(--p170-cream);display:grid;place-items:center}.p170-dialogue-avatar>i{display:block;width:calc(100% - 10px);height:calc(100% - 10px);border-radius:50%;background-image:url('assets/campaign/fc_campaign_characters_v3.png');background-size:400% 300%;background-position:var(--cx) var(--cy)}.p170-dialogue-avatar.player{background:none;overflow:visible}.p170-dialogue-avatar.player img{width:calc(100% - 10px);height:calc(100% - 10px);border-radius:50%;object-fit:cover}
.p170-encounter-bottom{display:grid;grid-template-columns:1fr minmax(190px,280px);gap:14px;align-items:center;margin-top:15px}.p170-reward-strip{min-height:58px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;padding:10px;background:rgba(0,0,0,.27);border:1px solid rgba(243,214,154,.36)}.p170-reward-strip span,.p170-reward-strip button{display:inline-flex;gap:6px;align-items:center;color:var(--p170-gold);font-size:14px}.p170-reward-strip button{min-height:44px;border:1px solid rgba(243,214,154,.42);background:#071319;padding:5px 10px;cursor:pointer}.p170-reward-strip button span{font-size:12px}.p170-reward-strip img{width:34px;height:34px;object-fit:contain}.p170-reward-strip .card img{border-radius:5px}
.p170-gang-modal>h2{font-family:FCDisplay;font-size:clamp(34px,5vw,54px);color:var(--p170-cream);margin:0}.p170-gang-modal>p{color:#d4d9dd;font-size:17px}.p170-gang-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.p170-gang-grid article{background:rgba(255,255,255,.035);border:1px solid rgba(243,214,154,.42);padding:14px;display:flex;flex-direction:column}.p170-gang-grid article>img{width:124px;height:124px;object-fit:contain;margin:0 auto 8px}.p170-gang-grid h3{font-family:FCDisplay;font-size:25px;color:var(--p170-cream);margin:0}.p170-gang-grid span{font-size:11px;color:#d6dadd}.p170-gang-grid p{font-size:14px;line-height:1.2}.p170-gang-grid .perk{color:#69e3ac}.p170-gang-grid .con{color:#ff9b91}.p170-gang-grid button{margin-top:auto}

/* Result */
.p170-result-screen .screen-scroll{padding-bottom:0}.p170-result{position:relative;z-index:4;width:min(100%,980px);min-height:100dvh;margin:auto;padding:max(16px,env(safe-area-inset-top)) clamp(16px,3vw,36px) calc(18px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:17px}.p170-result-head{min-height:104px;display:flex;align-items:center;gap:17px}.p170-result-head>span{width:90px;height:90px;display:grid;place-items:center;padding:19px;--paint:var(--accent)}.p170-result-head img{width:100%;height:100%;filter:brightness(0) invert(1)}.p170-result-head small{font-size:12px;color:#d2d6db;letter-spacing:.1em}.p170-result-head h1{font-family:FCScan;font-size:clamp(45px,7vw,76px);line-height:.9;margin:3px 0;color:var(--accent)}.p170-result-head b{font-size:12px}.p170-result-panel{background:linear-gradient(145deg,rgba(22,15,11,.97),rgba(7,14,18,.95));border:2px solid var(--p170-cream);padding:19px;box-shadow:0 14px 28px rgba(0,0,0,.28)}.p170-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.p170-metrics div{text-align:center}.p170-metrics i{display:grid;place-items:center;width:53px;height:53px;margin:0 auto 5px;border:2px solid var(--p170-cream);border-radius:50%;font-style:normal;font-size:23px}.p170-metrics b{display:block;font-family:FCDisplay;font-size:28px}.p170-metrics span{font-size:10px;color:#c5cbd0;letter-spacing:.08em}.p170-result-panel>header{display:flex;align-items:center;gap:12px}.p170-result-panel>header>span{width:54px;height:54px;border:2px solid var(--p170-cream);border-radius:50%;display:grid;place-items:center;font-size:23px}.p170-result-panel header small{color:#bfc5ca;font-size:10px}.p170-result-panel h3{font-family:FCDisplay;color:var(--p170-gold);font-size:24px;margin:1px 0}.p170-result-panel.reward{display:grid;grid-template-columns:minmax(220px,auto) 1fr;gap:16px;align-items:center}.p170-control{margin-top:14px;display:grid;grid-template-columns:1fr auto;gap:5px}.p170-control span{font-family:FCDisplay;color:var(--p170-gold);font-size:16px}.p170-control b{color:var(--accent)}.p170-control>i{grid-column:1/-1;height:13px;border-radius:12px;background:rgba(255,255,255,.1);overflow:hidden}.p170-control em{display:block;height:100%;background:var(--accent);border-radius:inherit}.p170-result-panel h4{font-family:FCDisplay;color:var(--p170-cream);font-size:18px;margin:15px 0 7px}.p170-result-cards{display:flex;gap:10px;overflow-x:auto;padding:5px 2px 10px;scrollbar-width:thin}.p170-result-cards .fighter-card.small{flex:0 0 103px}.p170-perf-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.p170-perf-grid span{background:rgba(255,255,255,.04);padding:14px}.p170-perf-grid small{display:block;color:#bfc5ca}.p170-perf-grid b{font-size:26px}.p170-result-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:auto}.p170-result-actions .paint-button{min-height:72px}

/* Battle and Ability parity */
.battle-screen{height:100dvh!important;min-height:100dvh!important}.battle-ui{width:min(100%,980px)!important;margin:auto!important}.p170-turn-timer{width:46px;height:46px;border:2px solid var(--p170-cream);background:rgba(3,12,16,.94);display:flex;flex-direction:column;align-items:center;justify-content:center;color:white}.p170-turn-timer b{font-family:FCDisplay;font-size:20px;color:var(--p170-gold);line-height:.85}.p170-turn-timer span{font-size:7px}.p170-turn-timer.urgent{border-color:var(--p170-red);box-shadow:0 0 15px rgba(255,100,113,.5)}.battle-top:has(.p170-turn-timer){grid-template-columns:clamp(40px,5.7dvh,48px) minmax(0,1fr) 20px minmax(0,1fr) clamp(38px,5.2dvh,44px) clamp(40px,5.7dvh,48px) 46px!important}
.p170-stat-blocked{filter:grayscale(1);opacity:.38!important;pointer-events:none}.p170-stat-blocked::after{content:'BLOCKED';display:block;font-size:7px;color:var(--p170-red)}
.p170-ability-pocket{position:absolute;left:50%;bottom:0;transform:translate(-50%,65%);z-index:15;display:flex;gap:5px;padding:6px;background:rgba(4,15,20,.94);border:1px solid var(--p170-cream);box-shadow:0 7px 18px #000}.p170-ability-pocket button{width:45px;min-height:45px;padding:3px;border:1px solid rgba(255,255,255,.18);background:#15262e;color:white;display:grid;place-items:center;position:relative;cursor:pointer}.p170-ability-pocket button img{width:31px;height:31px;object-fit:contain;border-radius:50%}.p170-ability-pocket button span{position:absolute;left:50%;bottom:-14px;transform:translateX(-50%);font-size:7px;white-space:nowrap;display:none}.p170-ability-pocket button.ready{border-color:var(--p170-gold);box-shadow:0 0 13px rgba(255,196,92,.42)}.p170-ability-pocket button.used{filter:grayscale(1);opacity:.38}.p170-ability-pocket button.pass{width:55px;font-size:10px;color:var(--p170-cream)}
.p170-opponent-rail{position:absolute;top:2px;left:8px;right:8px;display:flex;justify-content:center;gap:7px;z-index:9}.p170-opponent-rail>span{height:35px;min-width:94px;max-width:150px;border:1px solid rgba(243,214,154,.45);background:rgba(3,13,17,.88);display:grid;grid-template-columns:28px 1fr 22px;align-items:center;gap:4px;padding:3px}.p170-opponent-rail img{width:27px;height:27px;border-radius:50%;object-fit:cover}.p170-opponent-rail b{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p170-opponent-rail em{font-style:normal;color:var(--p170-gold)}.p170-opponent-rail .out{opacity:.38;filter:grayscale(1)}
.p170-ability-event{position:absolute;z-index:220;inset:0;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle,rgba(245,55,75,.3),rgba(0,0,0,.7) 55%,transparent 76%);animation:p170Ability 2s ease both}.p170-ability-event.defense{background:radial-gradient(circle,rgba(45,220,255,.28),rgba(0,0,0,.72) 55%,transparent 76%)}.p170-ability-event>div{text-align:center}.p170-ability-event span{font-size:13px;color:#e4e8eb}.p170-ability-event img{width:132px;height:132px;object-fit:contain;margin:8px auto;filter:drop-shadow(0 0 28px var(--p170-red));animation:p170AbilityIcon 2s ease both}.p170-ability-event.defense img{filter:drop-shadow(0 0 28px var(--p170-cyan))}.p170-ability-event h2{font-family:FCDisplay;font-size:39px;color:var(--p170-cream);margin:0}@keyframes p170Ability{0%{opacity:0}12%,86%{opacity:1}100%{opacity:0}}@keyframes p170AbilityIcon{0%{transform:perspective(700px) rotateY(90deg) scale(.6)}26%,86%{transform:perspective(700px) rotateY(0) scale(1)}100%{transform:scale(.9)}}
.p170-ability-result{position:absolute;z-index:260;inset:0;display:grid;place-items:center;background:rgba(0,6,9,.82);padding:12px}.p170-ability-result>section{position:relative;width:min(760px,100%);max-height:calc(100dvh - 24px);overflow-y:auto;background:linear-gradient(155deg,#10232a,#061318);border:2px solid var(--p170-cream);padding:22px;color:white}.p170-ability-result>section>button{position:absolute;right:8px;top:8px;width:44px;height:44px;background:#050b0e;border:1px solid #59646b;color:white;font-size:28px}.p170-ability-result small{color:var(--p170-cyan)}.p170-ability-result h2{font-family:FCDisplay;font-size:34px;color:var(--p170-cream);margin:2px 0 13px}.p170-ability-result article{border-top:1px solid rgba(243,214,154,.25);padding-top:10px}.p170-ability-result article h3{font-family:FCDisplay;font-size:22px;margin:0}.p170-ability-result article p{margin:2px 0 9px;color:#c8ced3}.p170-scout-cards{display:flex;gap:10px;overflow-x:auto;padding:6px}.p170-scout-cards>.fighter-card.small,.p170-scout-cards>button{flex:0 0 118px}.p170-scout-cards>button{border:1px solid var(--p170-cream);background:#0b171d;padding:4px;color:white}.p170-scout-cards .fighter-card.small{width:118px!important;height:176px!important}.p170-tell{display:grid;grid-template-columns:1fr auto;gap:4px 12px;background:rgba(255,255,255,.04);padding:14px;margin-top:8px}.p170-tell b{font-family:FCDisplay;font-size:20px}.p170-tell span{color:#bec6cb}.p170-tell strong{grid-column:1/-1;color:var(--p170-gold);font-size:22px}

/* Ringside Chalk component skin. The frame assets match Android; content art stays untouched. */
:is(.p170-chapters button,.p170-node-label,.p170-dialogues article,.p170-reward-strip,.p170-gang-grid article,.p170-result-panel,.p170-opponent-rail>span,.p170-tell,.settings-tab,.feature-btn,.a79-big-btn,.feature-tab,.commentary-language){position:relative;isolation:isolate;background:transparent!important;border:0!important;border-radius:0!important;clip-path:none!important}
:is(.p170-chapters button,.p170-node-label,.p170-dialogues article,.p170-reward-strip,.p170-gang-grid article,.p170-result-panel,.p170-opponent-rail>span,.p170-tell,.settings-tab,.feature-btn,.a79-big-btn,.feature-tab,.commentary-language)::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('assets/ui/fc_ui_name_rect.png') center/100% 100% no-repeat}
:is(.p170-encounter-modal,.p170-gang-modal,.p170-ability-result>section){isolation:isolate;background:transparent!important;border:0!important;box-shadow:0 24px 80px #000}
:is(.p170-encounter-modal,.p170-gang-modal,.p170-ability-result>section)::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('assets/ui/fc_ui_video_bg.png') center/100% 100% no-repeat}
.p170-encounter-modal,.p170-gang-modal{padding:clamp(34px,5vw,58px)}
.p170-ability-result>section{padding:clamp(30px,4vw,48px)}
.p170-chapters button.on,.p170-chapters button.on span{color:var(--p170-gold);text-shadow:0 0 9px rgba(242,193,93,.45)}
.p170-node-ring{isolation:isolate;background:#09161c;border:0!important;box-shadow:0 8px 24px #000!important}
.p170-node-ring::before{content:"";position:absolute;inset:-13px;z-index:-1;background:url('assets/ui/fc_ui_circle_paint.png') center/100% 100% no-repeat;pointer-events:none}
.p170-map-node.unlocked .p170-node-ring::before{filter:drop-shadow(0 0 12px var(--p170-cyan))}
.p170-map-node.complete .p170-node-ring::before{filter:drop-shadow(0 0 12px var(--p170-green))}
.p170-map-node.boss .p170-node-ring::before{filter:drop-shadow(0 0 16px var(--p170-gold))}
:is(.p170-node-ring>i,.p170-node-ring>em,.p170-metrics i,.p170-result-panel>header>span,.p170-turn-timer,.p170-modal-close,.p170-ability-result>section>button button){border:0!important;border-radius:0!important;background-color:transparent!important;background-image:url('assets/ui/fc_ui_circle_paint.png')!important;background-position:center!important;background-size:100% 100%!important;background-repeat:no-repeat!important}
.p170-dialogue-avatar{position:relative;isolation:isolate;border:0!important;box-shadow:none!important}
.p170-dialogue-avatar::after{content:"";position:absolute;inset:-7px;z-index:0;background:url('assets/ui/fc_ui_circle_paint.png') center/100% 100% no-repeat;pointer-events:none}
.p170-dialogue-avatar>i,.p170-dialogue-avatar>img{position:relative;z-index:1}
.p170-place-art,.p170-dialogue-avatar>i,.p170-dialogue-avatar img,.card-art,.winner-art-card>img{filter:none!important;mix-blend-mode:normal!important;opacity:1}
.p170-modal-close,.p170-ability-result>section>button{padding:10px;color:var(--p170-cream);font-family:FCDisplay}
.p170-result-panel{border:0!important;box-shadow:0 14px 28px rgba(0,0,0,.28)}
.p170-dialogues article{padding:14px 18px;border-left:0!important}
.p170-gang-grid article{padding:22px 24px}
.p170-ability-pocket{padding:9px 12px}
.p170-opponent-rail>span{padding:7px 12px;height:43px}
.p170-reward-strip{padding:14px 18px}
:is(.feature-btn,.a79-big-btn,.feature-tab,.commentary-language){color:var(--p170-cream)!important;text-shadow:0 2px 3px #000}
.a79-big-btn.gold{color:var(--p170-gold)!important}

/* Existing screens: responsive expansion and overflow repair */
@media(min-width:760px){
  .a79-page{padding:22px 28px 50px}.a79-recruit-grid{grid-template-columns:repeat(4,1fr);gap:20px}.a79-recruit-pack{aspect-ratio:.82/1;min-height:300px}.a79-team-grid{max-width:980px;margin-inline:auto}.a79-team-row.four{grid-template-columns:repeat(4,150px)}.a79-team-row.three{grid-template-columns:repeat(3,150px);padding:0}.a79-team-reserve{min-height:238px}.a79-reserve-item{flex-basis:132px;height:198px}.a79-ranked-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.a79-ranked-mode{height:270px!important}.a79-store-tabs{grid-template-columns:repeat(6,1fr)}.a79-store-grid{grid-template-columns:repeat(4,1fr)}.a79-store-item{min-height:330px}.a79-store-item img{height:170px}.feature-grid:not(.one),.dynamic-store-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.fighter-card{max-width:230px;margin-inline:auto}
  .arrange-content{width:min(100%,940px);margin:auto}.lineup-grid{display:grid;grid-template-columns:repeat(3,170px);grid-template-rows:repeat(3,1fr);justify-content:center;align-content:center;gap:12px}.slot-row{display:contents}.lineup-slot{width:150px;height:220px}.lineup-slot .fighter-card.small{width:140px;height:210px}.slot-row:last-child .lineup-slot{grid-column:2}.reserve-strip{width:100%;height:168px}.reserve-card-wrap .fighter-card.small{width:96px;height:148px}
}

@media(max-width:759px){
  .p170-home{padding-inline:12px}.p170-profile-bar{grid-template-columns:74px 1fr 62px;gap:9px;height:78px}.p170-cash img{width:34px;height:34px}.p170-cash strong{font-size:24px}.p170-mode-grid{grid-template-columns:1fr 1fr;gap:12px}.p170-home-tile{height:150px}.p170-home-tile.hero,.p170-home-tile.wide{grid-column:1/-1}.p170-home-tile.hero,.p170-home-tile.campaign{height:165px}.p170-home-tile.short{height:118px}.p170-mini-stack{height:150px;gap:12px}.p170-tile-copy{left:18px;bottom:20px}.p170-tile-copy b{font-size:21px}.p170-tile-copy small{font-size:10px}.p170-home-tile img{width:48%;right:5%}.p170-home-tile.campaign img,.p170-home-tile.hero img{width:35%}
  .p170-campaign{padding-inline:8px}.p170-header{grid-template-columns:52px 1fr 52px;gap:6px}.p170-back,.p170-refresh{width:49px;height:49px}.p170-header h1{font-size:31px}.p170-header>div span{font-size:8px}.p170-energy{grid-template-columns:50px 1fr auto;height:76px;padding:8px 10px!important}.p170-energy>img{width:47px;height:47px}.p170-energy b{font-size:14px}.p170-energy-pips{gap:5px}.p170-energy-pips i{width:clamp(40px,14vw,58px);height:13px}.p170-energy strong{font-size:12px}.p170-chapters button{flex-basis:79px;min-height:60px;border-radius:10px;display:block;text-align:center}.p170-chapters button span{font-size:26px}.p170-chapters button small{font-size:7px;text-align:center}.p170-chapter-intro{padding:18px 15px}.p170-chapter-intro h2{font-size:34px}.p170-chapter-intro p{font-size:13px}.p170-gang-banner b{font-size:19px}.p170-gang-banner small{font-size:9px}
  .p170-map-node{width:130px}.p170-node-ring{width:108px;height:108px;padding:7px;box-shadow:0 0 0 6px rgba(6,17,22,.85),0 0 0 8px rgba(243,214,154,.32),0 8px 18px #000}.p170-map-node.boss .p170-node-ring{width:124px;height:124px;box-shadow:0 0 0 6px rgba(6,17,22,.9),0 0 0 9px var(--p170-gold),0 0 25px rgba(255,93,98,.34)}.p170-node-ring>i,.p170-node-ring>em{width:31px;height:31px}.p170-node-ring>i{top:-14px;font-size:16px}.p170-node-ring>em{bottom:-14px;font-size:14px}.p170-node-label{width:130px;min-height:52px;margin-top:14px;padding:6px}.p170-node-label>b{font-size:16px}.p170-node-label>small{font-size:8px}.p170-node-label small img{width:14px;height:14px}.p170-map path{stroke-width:7}.p170-chapter-chest{height:78px}.p170-chapter-chest img{width:66px;height:66px}.p170-chapter-chest b{font-size:18px}
  .p170-encounter-modal,.p170-gang-modal{padding:17px 13px}.p170-encounter-hero{grid-template-columns:104px 1fr;gap:14px;padding-right:35px}.p170-encounter-hero>.p170-place-art{width:96px;height:96px}.p170-encounter-hero h2{font-size:31px}.p170-encounter-hero span{font-size:9px}.p170-lore{font-size:14px}.p170-dialogues article{grid-template-columns:56px 1fr;padding:8px}.p170-dialogue-avatar{width:49px;height:49px}.p170-dialogues b{font-size:17px}.p170-dialogues p{font-size:12px}.p170-encounter-bottom{grid-template-columns:1fr}.p170-gang-grid{grid-template-columns:1fr}.p170-gang-grid article{display:grid;grid-template-columns:102px 1fr;gap:11px}.p170-gang-grid article>img{width:96px;height:96px;grid-row:1/3}.p170-gang-grid article>div{display:contents}.p170-gang-grid article button{grid-column:1/-1}
  .p170-result{padding-inline:12px}.p170-result-head>span{width:75px;height:75px}.p170-result-head h1{font-size:46px}.p170-result-panel{padding:14px}.p170-metrics{gap:4px}.p170-metrics i{width:43px;height:43px;font-size:18px}.p170-metrics b{font-size:22px}.p170-result-panel.reward{grid-template-columns:1fr}.p170-result-actions .paint-button{min-height:64px}.p170-result-cards .fighter-card.small{flex-basis:88px;width:88px!important;height:139px!important}
  .arrange-content{width:100%!important;max-width:100%!important;margin:0!important;padding-inline:7px!important}.arrange-head{width:100%;min-width:0}.arrange-title{min-width:0}.lineup-grid{width:100%;padding-inline:0}.slot-row{width:100%;gap:6px!important}.lineup-slot{width:calc((100vw - 34px)/3)!important;max-width:114px;height:auto!important;aspect-ratio:2/3}.lineup-slot .fighter-card.small{width:calc(100% - 7px)!important;height:calc(100% - 7px)!important}.reserve-strip{width:100%!important;max-width:100%!important;padding-inline:10px!important;gap:8px!important;overscroll-behavior-x:contain}.reserve-card-wrap{flex:0 0 82px!important}.reserve-card-wrap .fighter-card.small{width:82px!important;height:130px!important}.ready-btn{width:calc(100% - 24px)!important;margin-inline:12px!important}.ability-pocket{width:154px}.arrange-screen{width:100vw!important;max-width:100vw!important}
  .battle-top:has(.p170-turn-timer){grid-template-columns:36px minmax(0,1fr) 14px minmax(0,1fr) 34px 36px!important}.p170-turn-timer{position:absolute;right:7px;top:52px;width:39px;height:39px}.p170-ability-pocket{transform:translate(-50%,58%)}.p170-ability-pocket button{width:39px;min-height:39px}.p170-ability-pocket button img{width:27px;height:27px}.p170-opponent-rail>span{min-width:78px;max-width:108px}.p170-opponent-rail b{font-size:7px}.p170-scout-cards>.fighter-card.small,.p170-scout-cards>button{flex-basis:95px}.p170-scout-cards .fighter-card.small{width:95px!important;height:148px!important}
}

@media(max-width:390px){.p170-home-tile{height:140px}.p170-home-tile.hero,.p170-home-tile.campaign{height:155px}.p170-mini-stack{height:140px}.p170-tile-copy b{font-size:19px}.p170-map-node{width:118px}.p170-node-ring{width:98px;height:98px}.p170-map-node.boss .p170-node-ring{width:113px;height:113px}.p170-node-label{width:118px}.p170-node-label>b{font-size:15px}.p170-chapter-intro h2{font-size:30px}}
@media(max-height:680px) and (max-width:759px){.p170-profile-bar{height:68px;margin-bottom:10px}.p170-profile-bar button{height:62px}.p170-home-tile{height:126px}.p170-home-tile.hero,.p170-home-tile.campaign{height:140px}.p170-mini-stack{height:126px}.p170-home-tile.short{height:104px}.p170-mode-grid{gap:9px}.p170-mini-stack{gap:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.p170-home-tile:hover{transform:none}}

/* v1.7.2: one portrait game canvas on every browser, matching the Android ratio. */
.p170-home{padding-inline:12px}.p170-profile-bar{grid-template-columns:74px 1fr 62px;gap:9px;height:78px}.p170-cash img{width:34px;height:34px}.p170-cash strong{font-size:24px}.p170-mode-grid{grid-template-columns:1fr 1fr;gap:12px}.p170-home-tile{height:150px}.p170-home-tile.hero,.p170-home-tile.wide{grid-column:1/-1}.p170-home-tile.hero,.p170-home-tile.campaign{height:165px}.p170-home-tile.short{height:118px}.p170-mini-stack{height:150px;gap:12px}.p170-tile-copy{left:18px;bottom:20px}.p170-tile-copy b{font-size:21px}.p170-tile-copy small{font-size:10px}.p170-home-tile img{width:48%;right:5%}.p170-home-tile.campaign img,.p170-home-tile.hero img{width:35%}
.p170-page,.a79-page{padding:12px 12px 38px}.p170-header{grid-template-columns:52px 1fr 52px;gap:6px}.p170-back,.p170-refresh{width:49px;height:49px}.p170-header h1{font-size:31px}.p170-header>div span{font-size:8px}
.p170-campaign{width:100%;padding-inline:8px}.p170-energy{grid-template-columns:50px 1fr auto;height:76px;padding:8px 10px!important}.p170-energy>img{width:47px;height:47px}.p170-energy b{font-size:14px}.p170-energy-pips{gap:5px}.p170-energy-pips i{width:clamp(40px,14%,58px);height:13px}.p170-energy strong{font-size:12px}.p170-chapters button{flex-basis:79px;min-height:60px;border-radius:10px;display:block;text-align:center}.p170-chapters button span{font-size:26px}.p170-chapters button small{font-size:7px;text-align:center}.p170-chapter-intro{padding:18px 15px}.p170-chapter-intro h2{font-size:34px}.p170-chapter-intro p{font-size:13px}.p170-gang-banner b{font-size:19px}.p170-gang-banner small{font-size:9px}
.p170-map-node{width:130px}.p170-node-ring{width:108px;height:108px;padding:7px;box-shadow:0 0 0 6px rgba(6,17,22,.85),0 0 0 8px rgba(243,214,154,.32),0 8px 18px #000}.p170-map-node.boss .p170-node-ring{width:124px;height:124px;box-shadow:0 0 0 6px rgba(6,17,22,.9),0 0 0 9px var(--p170-gold),0 0 25px rgba(255,93,98,.34)}.p170-node-ring>i,.p170-node-ring>em{width:31px;height:31px}.p170-node-ring>i{top:-14px;font-size:16px}.p170-node-ring>em{bottom:-14px;font-size:14px}.p170-node-label{width:130px;min-height:52px;margin-top:14px;padding:6px}.p170-node-label>b{font-size:16px}.p170-node-label>small{font-size:8px}.p170-node-label small img{width:14px;height:14px}.p170-map path{stroke-width:7}.p170-chapter-chest{left:50%;width:calc(min(100vw,52dvh,560px) - 24px);height:78px}.p170-chapter-chest img{width:66px;height:66px}.p170-chapter-chest b{font-size:18px}
.p170-modal-layer,.expanded-card-overlay,.result-intro{inset:0 auto 0 50%!important;transform:translateX(-50%);width:min(100vw,52dvh,560px)!important}.p170-modal-layer{padding:10px}.p170-encounter-modal,.p170-gang-modal{width:100%;padding:17px 13px}.p170-encounter-hero{grid-template-columns:104px 1fr;gap:14px;padding-right:35px}.p170-encounter-hero>.p170-place-art{width:96px;height:96px}.p170-encounter-hero h2{font-size:31px}.p170-encounter-hero span{font-size:9px}.p170-lore{font-size:14px}.p170-dialogues article{grid-template-columns:56px 1fr;padding:8px}.p170-dialogue-avatar{width:49px;height:49px}.p170-dialogues b{font-size:17px}.p170-dialogues p{font-size:12px}.p170-encounter-bottom{grid-template-columns:1fr}.p170-gang-grid{grid-template-columns:1fr}.p170-gang-grid article{display:grid;grid-template-columns:102px 1fr;gap:11px}.p170-gang-grid article>img{width:96px;height:96px;grid-row:1/3}.p170-gang-grid article>div{display:contents}.p170-gang-grid article button{grid-column:1/-1}
.p170-result{width:100%;padding-inline:12px}.p170-result-head>span{width:75px;height:75px}.p170-result-head h1{font-size:46px}.p170-result-panel{padding:14px}.p170-metrics{gap:4px}.p170-metrics i{width:43px;height:43px;font-size:18px}.p170-metrics b{font-size:22px}.p170-result-panel.reward{grid-template-columns:1fr}.p170-result-actions .paint-button{min-height:64px}.p170-result-cards .fighter-card.small{flex-basis:88px;width:88px!important;height:139px!important}
.a79-recruit-grid,.a79-store-grid,.dynamic-store-grid,.feature-grid:not(.one),.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.a79-recruit-pack{aspect-ratio:1.03/1;min-height:0}.a79-team-grid{max-width:none}.a79-team-row.four{grid-template-columns:repeat(4,minmax(0,1fr))}.a79-team-row.three{grid-template-columns:repeat(3,minmax(0,1fr));padding:0 11%}.a79-team-reserve{min-height:184px}.a79-reserve-item{flex-basis:90px;height:142px}.a79-ranked-list{display:flex;flex-direction:column;gap:12px}.a79-ranked-mode{height:135px!important}.a79-store-tabs{grid-template-columns:repeat(3,1fr)}.a79-store-item{min-height:225px;padding-top:10px}.a79-store-item img{height:112px}.fighter-card{max-width:none;margin-inline:0}
.arrange-content{width:100%!important;max-width:100%!important;margin:0!important;padding-inline:7px!important}.arrange-head{width:100%;min-width:0}.arrange-title{min-width:0}.lineup-grid{width:100%;padding-inline:0;display:flex;grid-template-columns:none;grid-template-rows:none;gap:0}.slot-row{display:flex;width:100%;gap:6px!important}.lineup-slot{width:calc((100% - 34px)/3)!important;max-width:114px;height:auto!important;aspect-ratio:2/3}.lineup-slot .fighter-card.small{width:calc(100% - 7px)!important;height:calc(100% - 7px)!important}.slot-row:last-child .lineup-slot{grid-column:auto}.reserve-strip{width:100%!important;max-width:100%!important;height:168px;padding-inline:10px!important;gap:8px!important;overscroll-behavior-x:contain}.reserve-card-wrap{flex:0 0 82px!important}.reserve-card-wrap .fighter-card.small{width:82px!important;height:130px!important}.ready-btn{width:calc(100% - 24px)!important;margin-inline:12px!important}.ability-pocket{width:154px}.arrange-screen{width:100%!important;max-width:100%!important}
.battle-ui{width:100%!important}.battle-top:has(.p170-turn-timer){grid-template-columns:36px minmax(0,1fr) 14px minmax(0,1fr) 34px 36px!important}.p170-turn-timer{position:absolute;right:7px;top:52px;width:39px;height:39px}.p170-ability-pocket{transform:translate(-50%,58%)}.p170-ability-pocket button{width:39px;min-height:39px}.p170-ability-pocket button img{width:27px;height:27px}.p170-opponent-rail>span{min-width:78px;max-width:108px}.p170-opponent-rail b{font-size:7px}.p170-scout-cards>.fighter-card.small,.p170-scout-cards>button{flex-basis:95px}.p170-scout-cards .fighter-card.small{width:95px!important;height:148px!important}.round-banner{width:min(390px,calc(min(100vw,52dvh,560px) * .88))}.expanded-stage{width:100%}

/* Android-style Emote collections: bundle cards, catalogue previews, no individual product names. */
.p171-emote-store{display:grid;gap:10px}.p171-emote-store>.a79-section-title{font-size:19px;margin:7px 5px 0;color:var(--p170-gold)}.p171-owned-emotes,.p171-emote-pack{position:relative;border:0;color:white;cursor:pointer;text-align:center}.p171-owned-emotes{width:100%;min-height:126px;display:grid;grid-template-columns:96px 1fr 54px;align-items:center;gap:8px;padding:15px 18px}.p171-owned-emotes>span:nth-child(2){display:flex;flex-direction:column}.p171-owned-emotes b,.p171-emote-pack b{font-family:FCDisplay;font-size:19px;color:var(--p170-cream)}.p171-owned-emotes small,.p171-emote-pack small{font-size:10px;color:var(--p170-muted)}.p171-owned-emotes em,.p171-emote-pack em{font-style:normal;font-size:10px;color:var(--p170-green)}.p171-owned-emotes strong{font-family:FCDisplay;color:var(--p170-gold)}.p171-emote-art{display:grid;place-items:center;overflow:hidden}.p171-owned-emotes .p171-emote-art{width:88px;height:88px}.p171-emote-art img{width:100%;height:100%;object-fit:contain;filter:none!important}.p171-emote-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.p171-emote-pack{min-height:236px;aspect-ratio:.72/1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 12px}.p171-emote-pack .p171-emote-art{width:100%;height:128px}.p171-emote-copy{display:flex;flex-direction:column;gap:3px;margin-top:6px}.p171-emote-layer{position:fixed;z-index:510;inset:0 auto 0 50%;transform:translateX(-50%);width:min(100vw,52dvh,560px);display:grid;place-items:center;background:rgba(0,0,0,.86);padding:12px;backdrop-filter:blur(6px)}.p171-emote-preview{width:100%;max-height:calc(100dvh - 24px);overflow-y:auto;padding:34px 26px 25px;color:white;text-align:center}.p171-emote-preview>small{color:var(--p170-gold);letter-spacing:.14em}.p171-emote-preview h2{font-family:FCDisplay;font-size:32px;margin:3px 0}.p171-emote-preview p{color:var(--p170-muted)}.p171-emote-close{position:absolute;right:9px;top:9px;width:44px;height:44px;border:0;background:transparent;color:white;font-size:28px;z-index:3}.p171-emote-catalogue{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 20px}.p171-emote-catalogue>span{position:relative;aspect-ratio:1;display:grid;place-items:center;padding:7px;background:rgba(255,255,255,.045)}.p171-emote-catalogue>span.active{filter:drop-shadow(0 0 8px var(--p170-green))}.p171-emote-catalogue img{width:100%;height:100%;object-fit:contain;filter:none!important}.p171-emote-catalogue b{position:absolute;left:4px;right:4px;bottom:3px;color:var(--p170-green);font-size:7px;background:rgba(0,0,0,.72)}

/* Ability Locker is a first-class web surface and uses the same saved loadout. */
.p171-ability-header{width:49px;height:49px;object-fit:contain}.p171-ability-list{display:grid;gap:10px}.p171-ability-card{width:100%;min-height:105px;border:0;background:transparent;color:white;display:grid;grid-template-columns:74px 1fr 70px;align-items:center;gap:9px;padding:13px 17px;text-align:left;cursor:pointer}.p171-ability-card>span:first-child{width:66px;height:66px;display:grid;place-items:center;padding:12px}.p171-ability-card img{width:100%;height:100%;object-fit:contain}.p171-ability-card>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.p171-ability-card small{font-size:8px;color:var(--p170-cyan);letter-spacing:.12em}.p171-ability-card b{font-family:FCDisplay;font-size:22px;color:var(--p170-cream)}.p171-ability-card em{font-style:normal;font-size:11px;line-height:1.15;color:var(--p170-muted)}.p171-ability-card strong{font-family:FCDisplay;text-align:center;color:#8d969a}.p171-ability-card.selected{filter:drop-shadow(0 0 8px rgba(79,162,109,.45))}.p171-ability-card.selected strong{color:var(--p170-green)}.p171-save-abilities{width:100%;margin-top:13px}.p171-save-abilities span{display:block;font-size:8px;color:var(--p170-muted)}

@media(max-width:390px){.p170-home-tile{height:140px}.p170-home-tile.hero,.p170-home-tile.campaign{height:155px}.p170-mini-stack{height:140px}.p170-tile-copy b{font-size:19px}.p170-map-node{width:118px}.p170-node-ring{width:98px;height:98px}.p170-map-node.boss .p170-node-ring{width:113px;height:113px}.p170-node-label{width:118px}.p170-node-label>b{font-size:15px}.p170-chapter-intro h2{font-size:30px}.p171-ability-card{grid-template-columns:64px 1fr 60px;padding-inline:11px}.p171-ability-card>span:first-child{width:58px;height:58px}.p171-ability-card b{font-size:19px}}
@media(max-height:680px){.p170-profile-bar{height:68px;margin-bottom:10px}.p170-profile-bar button{height:62px}.p170-home-tile{height:126px}.p170-home-tile.hero,.p170-home-tile.campaign{height:140px}.p170-mini-stack{height:126px}.p170-home-tile.short{height:104px}.p170-mode-grid{gap:9px}.p170-mini-stack{gap:9px}}

/* v1.7.2: Android-height Arrange layout and tap-to-read Ability Pocket. */
.arrange-screen,.arrange-screen .content{height:100dvh!important;min-height:0!important}
.arrange-content{display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:max(6px,env(safe-area-inset-top)) 7px max(2px,env(safe-area-inset-bottom))!important}
.arrange-head{display:flex!important;flex:0 0 auto!important;height:58px!important;min-height:58px!important;align-items:center!important;gap:2px!important}
.arrange-head:has(.arrange-timer){height:88px!important;min-height:88px!important;align-items:flex-start!important}
.arrange-head .back-btn{width:70px;height:54px}
.arrange-title{padding-top:0!important}
.arrange-title>b{font-size:clamp(23px,7vw,28px)!important}
.arrange-title>span{margin-top:3px!important;font-size:8px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis}
.arrange-head .auto-btn{width:92px;height:50px!important;align-self:center!important;font-size:14px}
.arrange-head:has(.arrange-timer) .auto-btn{align-self:flex-start!important}
.arrange-timer{top:55px!important;height:25px!important;min-width:88px!important}
.lineup-grid{display:grid!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;grid-template-columns:1fr!important;flex:1 1 auto!important;width:100%!important;min-height:0!important;overflow:hidden!important;padding:2px 0!important;gap:2px!important;align-items:stretch!important;justify-items:stretch!important}
.lineup-grid .slot-row{display:flex!important;width:100%!important;height:100%!important;min-height:0!important;align-items:center!important;justify-content:center!important;gap:8px!important}
.lineup-grid .lineup-slot{height:calc(100% - 4px)!important;max-height:142px!important;width:auto!important;max-width:94px!important;aspect-ratio:94/142!important;flex:0 1 auto!important}
.lineup-grid .lineup-slot .fighter-card.small{width:calc(100% - 5px)!important;height:calc(100% - 5px)!important;max-width:none!important;margin:0!important}
.lineup-grid .slot-empty strong{font-size:clamp(27px,5dvh,39px)}
.lineup-grid .slot-empty span{font-size:9px}
.p172-arrange-pocket{flex:0 0 42px;width:min(275px,calc(100% - 24px));height:42px;margin:1px auto 3px;border:0;background:transparent;color:white;display:grid;grid-template-columns:74px 1fr 21px;align-items:center;gap:4px;padding:4px 10px;cursor:pointer}
.p172-arrange-pocket>b{font-family:FCDisplay;font-size:12px;line-height:.9;color:var(--p170-cream);text-align:left}
.p172-arrange-pocket>span{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}
.p172-arrange-pocket i{min-width:0;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:2px;font-style:normal}
.p172-arrange-pocket i img{width:24px;height:24px;object-fit:contain;filter:none!important}
.p172-arrange-pocket i small{max-width:38px;font-size:7px;line-height:.9;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}
.p172-arrange-pocket>strong{font-size:18px;color:var(--p170-gold)}
.ready-btn{flex:0 0 54px!important;width:calc(100% - 56px)!important;height:54px!important;min-height:54px!important;margin:0 28px 2px!important;padding-block:6px!important}
.reserve-head{flex:0 0 18px!important;height:18px!important;padding:1px 6px!important;font-size:11px!important}
.reserve-strip{flex:0 0 clamp(108px,18dvh,150px)!important;width:100%!important;max-width:100%!important;height:clamp(108px,18dvh,150px)!important;margin:0!important;padding:7px 10px!important;gap:9px!important;overscroll-behavior-x:contain}
.reserve-card-wrap{height:100%!important;flex:0 0 auto!important}
.reserve-card-wrap .fighter-card.small{height:100%!important;width:auto!important;max-width:none!important;aspect-ratio:154/224!important;margin:0!important}

.p172-arrange-ability-layer{position:absolute;z-index:420;inset:0;display:grid;place-items:center;padding:12px;background:rgba(5,7,12,.93);backdrop-filter:blur(6px)}
.p172-arrange-ability-overlay{position:relative;width:100%;max-height:calc(100dvh - 24px);padding:28px 22px;color:white;overflow-y:auto}
.p172-arrange-ability-overlay>header{display:flex;align-items:center;gap:10px;margin-bottom:9px}
.p172-arrange-ability-overlay>header>div{flex:1;min-width:0}
.p172-arrange-ability-overlay header small{color:var(--p170-gold);font-size:8px;letter-spacing:.13em}
.p172-arrange-ability-overlay h2{font-family:FCDisplay;font-size:27px;line-height:1;margin:2px 0;color:var(--p170-cream)}
.p172-arrange-ability-overlay>header>button,.p172-detail-close{width:42px;height:42px;border:0;background:transparent url('assets/ui/fc_ui_circle_paint.png') center/100% 100% no-repeat;color:white;font-size:25px;cursor:pointer}
.p172-arrange-ability-overlay>div{display:grid;gap:8px}
.p172-arrange-ability-overlay article{min-height:105px;display:grid;grid-template-columns:70px 1fr;align-items:center;gap:11px;padding:10px 12px;background:rgba(15,19,24,.86);border:1px solid rgba(242,193,93,.3)}
.p172-arrange-ability-overlay article>span{width:62px;height:62px;display:grid;place-items:center;padding:11px}
.p172-arrange-ability-overlay article img{width:100%;height:100%;object-fit:contain;filter:none!important}
.p172-arrange-ability-overlay article b{display:block;font-family:FCDisplay;font-size:19px;color:var(--p170-cream)}
.p172-arrange-ability-overlay article small{display:block;color:var(--p170-cyan);font-size:8px;letter-spacing:.11em}
.p172-arrange-ability-overlay article p{margin:4px 0 0;font-size:10px;line-height:1.2;color:#e2ddd3}

/* Ability Locker follows Android: compact owned rows; detail appears only after a tap. */
.p172-equipped-pocket{padding:15px 18px 12px;text-align:center;color:white}
.p172-equipped-pocket>small,.p172-owned-title{font-size:10px;letter-spacing:.14em;color:var(--p170-gold)}
.p172-equipped-pocket>div{display:flex;justify-content:center;gap:12px;margin-top:8px}
.p172-equipped-pocket button,.p172-equipped-pocket i{position:relative;width:66px;height:66px;border:0;background:transparent;color:white;display:grid;place-items:center;padding:12px;font-style:normal;font-size:22px}
.p172-equipped-pocket button img{width:100%;height:100%;object-fit:contain;filter:none!important}
.p172-equipped-pocket button span{position:absolute;left:-5px;right:-5px;bottom:-8px;font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:rgba(0,0,0,.72);color:#fff}
.p172-owned-title{font-family:FCDisplay;margin:13px 5px 5px;font-size:15px}
.p171-ability-list{gap:6px}
.p171-ability-card{min-height:64px!important;grid-template-columns:50px minmax(0,1fr) 32px!important;gap:8px!important;padding:7px 11px!important}
.p171-ability-card>span:first-child{width:46px!important;height:46px!important;padding:8px!important}
.p171-ability-card b{font-size:18px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.p171-ability-card strong{font-size:19px;color:var(--p170-muted)}
.p171-ability-card.selected strong{color:var(--p170-green)}
.p171-ability-card em{display:none!important}
.p171-save-abilities{margin-top:9px}
.p172-ability-detail-layer{position:fixed;z-index:520;inset:0 auto 0 50%;transform:translateX(-50%);width:min(100vw,52dvh,560px);display:grid;place-items:center;padding:12px;background:rgba(0,0,0,.88);backdrop-filter:blur(7px)}
.p172-ability-detail{position:relative;width:100%;padding:38px 28px 28px;text-align:center;color:white}
.p172-ability-detail>span{width:96px;height:96px;display:grid;place-items:center;padding:17px;margin:0 auto 8px}
.p172-ability-detail>span img{width:100%;height:100%;object-fit:contain;filter:none!important}
.p172-ability-detail>small{color:var(--p170-cyan);font-size:9px;letter-spacing:.14em}
.p172-ability-detail h2{font-family:FCDisplay;font-size:34px;color:var(--p170-cream);margin:2px 0 8px}
.p172-ability-detail p{font-size:13px;line-height:1.35;color:#ece4d8;margin:0 0 18px}
.p172-detail-close{position:absolute;right:8px;top:8px}

/* Shared portrait guards for long names, translated copy and narrow devices. */
.p170-page,.a79-page,.feature-content,.meta-content,.catalog-content,.store-content,.recruit-content{min-width:0}
:is(.p170-header,.a79-header,.screen-topbar) :is(h1,h2,b,span),:is(.feature-card,.a79-store-item,.p171-ability-card) :is(h2,h3,b,p,span){overflow-wrap:anywhere}
button{min-width:0}

@media(max-height:690px){
  .arrange-head{height:50px!important;min-height:50px!important}.arrange-head .back-btn{height:46px}.arrange-head .auto-btn{height:44px!important}.arrange-title>b{font-size:22px!important}
  .p172-arrange-pocket{flex-basis:38px;height:38px}.ready-btn{flex-basis:47px!important;height:47px!important;min-height:47px!important}.reserve-strip{flex-basis:104px!important;height:104px!important}
  .lineup-grid .lineup-slot{max-height:112px!important;max-width:74px!important}
}
/* v1.7.2 positioning and fixed-canvas modal corrections. */
.p170-chapter-chest{position:fixed!important;isolation:isolate;background:transparent!important;border:0!important;border-radius:0!important;clip-path:none!important;box-shadow:0 14px 28px rgba(0,0,0,.28)}
.p170-ability-pocket{position:absolute!important;isolation:isolate;background:transparent!important;border:0!important;border-radius:0!important;clip-path:none!important}
.p170-chapter-chest::before,.p170-ability-pocket::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('assets/ui/fc_ui_name_rect.png') center/100% 100% no-repeat}
.p170-gang-modal>h2{max-width:calc(100% - 42px);font-size:34px!important;line-height:.9!important;margin:4px 0 10px!important}
.p170-gang-modal>p{font-size:13px!important;line-height:1.25;margin:0 0 12px;padding-right:4px}
.p170-gang-grid article{padding:17px 18px!important}
.p170-gang-grid h3{font-size:22px;line-height:.95}
.p170-gang-grid p{font-size:12px;overflow-wrap:anywhere}

.p170-gang-modal>h2{max-width:calc(100% - 54px);font-size:30px!important}
.p170-ability-result>section>button{right:10px!important;top:10px!important;width:42px!important;height:42px!important;border:0!important;border-radius:0!important;background-color:transparent!important;background-image:url('assets/ui/fc_ui_circle_paint.png')!important;background-position:center!important;background-size:100% 100%!important;background-repeat:no-repeat!important;color:var(--p170-cream)!important}

