:root{--game:"Lilita One",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Hiragino Sans","PingFang SC",system-ui,sans-serif;--ink:#17223b;--navy:#22304f;--navy2:#31446d;--navy3:#2a3a5e;--gold:#ffc93c;--stroke:0 2px 0 var(--ink),2px 0 0 var(--ink),-2px 0 0 var(--ink),0 -2px 0 var(--ink),2px 2px 0 var(--ink),-2px 2px 0 var(--ink),0 3px 0 var(--ink);color:#fff;font-synthesis:none;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);background:#6e9f45;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Hiragino Sans,PingFang SC,PingFang TC,system-ui,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none;width:100%;height:100%;margin:0;overflow:hidden}body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}button{font:inherit;touch-action:manipulation;cursor:pointer}[hidden]{display:none!important}.tag{z-index:1;background:#fff;border-radius:7px;justify-content:center;align-items:center;min-width:28px;height:22px;padding:0 5px;font-size:13px;line-height:1;display:flex;position:absolute;top:-9px;left:-7px;box-shadow:0 2px #0003}.tag.ad:before{content:"";border-top:6px solid #0000;border-bottom:6px solid #0000;border-left:9px solid #e5483b;width:0;height:0;margin-left:2px}.tag.free{background:#fff6c8}#app{background:#6e9f45;width:100%;max-width:520px;height:100dvh;margin:auto;position:relative;overflow:hidden}#field{inset:0;bottom:var(--footer-height,170px);position:absolute}canvas{touch-action:none;width:100%;height:100%;display:block}header{z-index:3;top:var(--safe-top);pointer-events:none;justify-content:flex-end;align-items:center;gap:10px;padding:12px 16px;font-size:13px;font-weight:750;display:flex;position:absolute;left:0;right:0}#dmg{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}#dmg i{font-style:normal;font-family:var(--game);color:#fff;text-shadow:var(--stroke);font-size:17px;font-weight:400;animation:.75s ease-out forwards dmg-up;position:absolute;transform:translate(-50%,-50%)}#dmg i.hurt{color:#ffc9c2;font-size:12px}#dmg i.heal{color:#8dffad;font-size:13px}#dmg i.crit{color:#ffd23f;font-size:26px}@keyframes dmg-up{0%{opacity:0;margin-top:6px;scale:.6}20%{opacity:1;scale:1.15}to{opacity:0;margin-top:-34px;scale:1}}@media (prefers-reduced-motion:reduce){#dmg i,#point{animation:none}#dmg i{display:none}}#gold{height:36px;font-family:var(--game);color:#fff;text-shadow:var(--stroke);letter-spacing:.3px;background:#17223bcc;border-radius:18px;align-items:center;gap:7px;padding:0 14px 0 5px;font-size:20px;font-weight:400;box-shadow:inset 0 -3px #0b1224;display:inline-flex!important}#gold:before{content:"";background:radial-gradient(circle at 35% 30%,#fff3b0 0 18%,#ffcf3f 40%,#e09b12 100%);border-radius:50%;width:27px;height:27px;box-shadow:inset 0 0 0 3px #f2b324,0 2px #9a6406}footer{padding:12px 0 calc(12px + var(--safe-bottom));background:var(--navy);box-shadow:0 -4px 0 var(--navy2),0 -12px 26px #0000004d;border-radius:24px 24px 0 0;flex-direction:column;gap:10px;display:flex;position:absolute;bottom:0;left:0;right:0}#detail{grid-template-columns:1fr auto;align-items:center;column-gap:12px;margin:0 12px;padding:2px 2px 2px 0;display:grid;position:relative}#detail .head{grid-column:1;align-items:center;gap:10px;min-width:0;display:flex}#detail .symbol{color:#fff;background:#2f8fe0;border-radius:14px;flex:0 0 46px;justify-content:center;align-items:center;height:46px;font-size:24px;line-height:1;display:flex;box-shadow:inset 0 -5px #1b5fa6,0 0 0 3px #4a6191}#detail .who{flex-direction:column;gap:5px;min-width:0;display:flex}#detail b{font-family:var(--game);letter-spacing:.3px;text-shadow:var(--stroke);white-space:nowrap;text-overflow:ellipsis;padding:0 2px 3px;font-size:20px;font-weight:400;overflow:hidden}.pips{gap:4px;display:flex}.pips i{background:#3a4c75;border-radius:4px;width:13px;height:13px}.pips i.on{background:var(--gold);box-shadow:inset 0 -3px #c98a0c}.pips b{font-family:var(--game);color:var(--gold);text-shadow:var(--stroke);margin-left:2px;font-size:15px;font-weight:400;line-height:13px}#unlock{color:#fff;min-width:96px;height:56px;font-family:var(--game);text-shadow:var(--stroke);background:#43c95d;border:0;border-radius:16px;grid-column:2;padding:0 16px 5px;font-size:20px;position:relative;box-shadow:inset 0 -6px #23923a,0 4px #15582a}#unlock:active:not(:disabled){transform:translateY(3px);box-shadow:inset 0 -4px #23923a,0 1px #15582a}#unlock .reward{justify-content:center;align-items:center;gap:6px;display:flex}#unlock .reward i{font-size:24px;font-style:normal;line-height:1}#unlock .reward b{align-items:center;font-size:24px;font-weight:400;display:flex}#unlock:disabled{opacity:.5}#unlock.locked{background:#3aa3f0;box-shadow:inset 0 -6px #1b6fb8,0 4px #0f3f6e}#unlock.sealed{background:#55668c;box-shadow:inset 0 -6px #3a4a6e,0 4px #1b2640}#unlock.max{opacity:1;background:#55668c;box-shadow:inset 0 -6px #3a4a6e,0 4px #1b2640}#unlock.waiting{opacity:.6;filter:saturate(.55);overflow:visible}#unlock.waiting:after{content:"";pointer-events:none;background:linear-gradient(100deg,#fff0 30%,#fff6 50%,#fff0 70%) 0 0/300% 100%;border-radius:16px;animation:1.3s ease-in-out infinite ad-wait;position:absolute;inset:0}@keyframes ad-wait{0%{background-position:100% 0}to{background-position:0 0}}#unlock.shake{animation:.32s card-shake}#unlock.ready,#gift-double.ready{animation:.5s cubic-bezier(.2,1.6,.4,1) ad-ready}@keyframes ad-ready{0%{transform:scale(.86)}45%{transform:scale(1.1)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){#unlock.waiting:after{animation:none}}#detail.locked .symbol{background:#5b6b8c;box-shadow:inset 0 -5px #3d4a66,0 0 0 3px #4a6191}#detail.locked b{color:#c7d2ea}#detail.flash{animation:.5s detail-flash}@keyframes detail-flash{0%{filter:brightness(1.6)}to{filter:none}}.row{grid-template-columns:1fr 76px;align-items:end;gap:8px;padding:0 12px;display:grid}#cards{overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;padding:10px 2px 6px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 90%,#0000);mask-image:linear-gradient(90deg,#000 90%,#0000)}#cards::-webkit-scrollbar{display:none}.unit-card{scroll-snap-align:start;background:var(--navy2);color:#fff;border:3px solid #4a6191;border-radius:14px;flex-direction:column;flex:0 0 60px;justify-content:center;align-items:center;gap:3px;min-height:72px;padding:6px 2px 7px;transition:transform .12s;display:flex;position:relative;box-shadow:inset 0 -5px #26365a}.unit-card .symbol{background:#2f8fe0;border-radius:11px;justify-content:center;align-items:center;width:36px;height:36px;font-size:21px;line-height:1;display:flex;box-shadow:inset 0 -4px #1b5fa6}.unit-card b{display:none}.unit-card small{font-family:var(--game);color:#ffe08a;min-height:14px;font-size:13px;line-height:1}.unit-card.active{border-color:var(--gold);transform:translateY(-7px)}.unit-card.locked{opacity:.7}.unit-card.locked .symbol{filter:grayscale();background:#5b6b8c;box-shadow:inset 0 -4px #3d4a66}.unit-card.locked small{color:#c7d2ea}.unit-card.locked.active,.unit-card.openable{opacity:1}.unit-card.openable .symbol{filter:none;background:#3aa3f0;box-shadow:inset 0 -4px #1b6fb8,0 0 0 3px #fff6c2}.unit-card.shake{animation:.32s card-shake}@keyframes card-shake{0%,to{translate:0}25%{translate:-4px}50%{translate:4px}75%{translate:-3px}}#start{background:#ff8a1f;border:0;border-radius:22px;justify-content:center;align-items:center;min-height:76px;margin-bottom:6px;display:flex;position:relative;box-shadow:inset 0 -7px #d0600a,0 5px #7d3500,0 0 0 3px #ffd08a}#start svg{fill:none;stroke:#fff;stroke-width:4.5px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px #7d3500);width:42px;height:42px}#start:active:not(:disabled){transform:translateY(4px);box-shadow:inset 0 -5px #d0600a,0 1px #7d3500,0 0 0 3px #ffd08a}#start:disabled{opacity:.35;cursor:default}#start.nudge{animation:1.1s ease-in-out infinite start-nudge}@keyframes start-nudge{0%,to{scale:1}50%{scale:1.07}}#app[data-phase=battle] footer,#app[data-phase=result] footer{visibility:hidden}#app[data-phase=battle] #field,#app[data-phase=result] #field{bottom:0}#app[data-phase=battle] header,#app[data-phase=result] header{opacity:.8}#place-guide{pointer-events:none;filter:drop-shadow(0 3px 3px #25413640);width:120px;height:140px;position:absolute;transform:translate(-58px,-104px)}#place-guide svg{width:100%;height:100%;overflow:visible}.guide-arrow{fill:none;stroke:#fff8df;stroke-width:6px;stroke-linecap:round;stroke-linejoin:round;animation:.9s ease-in-out infinite guide-point}.tap-ring{fill:#fff8df15;stroke:#fff8df;stroke-width:3px;transform-origin:58px 104px;animation:.9s ease-out infinite guide-tap}.tap-dot{fill:#fff8df}#place-feedback{pointer-events:none;opacity:0;border:3px solid #e5fff1;border-radius:50%;width:48px;height:48px;position:absolute;transform:translate(-50%,-50%)}#place-feedback.ok{background:#469b7d33;border-color:#e0fff4}#place-feedback.invalid{background:#bd514425;border-color:#bd5144}#place-feedback.show{animation:.45s ease-out forwards place-ping}@keyframes guide-point{0%,to{transform:translateY(-5px)}50%{transform:translateY(4px)}}@keyframes guide-tap{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(1.5)}}@keyframes place-ping{0%{opacity:1;transform:translate(-50%,-50%)scale(.6)}to{opacity:0;transform:translate(-50%,-50%)scale(1.4)}}#outcome{z-index:5;text-align:center;color:#fff;pointer-events:auto;isolation:isolate;flex-direction:column;align-items:center;width:min(300px,80%);padding-bottom:22px;display:flex;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}#outcome:before{content:"";z-index:-1;background:var(--navy);box-shadow:inset 0 0 0 4px var(--navy2),0 7px 0 #0f1729;border-radius:24px;position:absolute;inset:36px 0 0}#outcome .ribbon{z-index:1;justify-content:center;align-items:center;width:calc(100% + 30px);height:64px;display:flex;position:relative}#outcome .ribbon:before,#outcome .ribbon:after{content:"";background:#c98a0c;width:46px;height:46px;position:absolute;top:16px}#outcome .ribbon:before{clip-path:polygon(0 0,100% 0,100% 100%,0 100%,24% 50%);left:-8px}#outcome .ribbon:after{clip-path:polygon(0 0,100% 0,76% 50%,100% 100%,0 100%);right:-8px}#result-title{z-index:1;background:var(--gold);width:calc(100% - 44px);height:58px;font-family:var(--game);letter-spacing:.5px;text-shadow:var(--stroke);white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;padding-bottom:6px;font-size:34px;font-weight:400;display:flex;position:relative;box-shadow:inset 0 -7px #e09b12,inset 0 4px #ffe38a,0 5px #7a4e05}#app[data-result=defeat] #outcome .ribbon:before,#app[data-result=defeat] #outcome .ribbon:after,#app[data-result=draw] #outcome .ribbon:before,#app[data-result=draw] #outcome .ribbon:after{background:#5a6578}#app[data-result=defeat] #result-title,#app[data-result=draw] #result-title{background:#8a96aa;box-shadow:inset 0 -7px #6b778c,inset 0 4px #b4bfd0,0 5px #2c3445}#reward{font-variant-numeric:tabular-nums;width:100%;margin:20px 0 18px;padding:0 20px}#reward>div{justify-content:center;align-items:center;gap:12px;display:flex}#reward dt{color:#0000;background:radial-gradient(circle at 35% 30%,#fff3b0 0 18%,#ffcf3f 40%,#e09b12 100%);border-radius:50%;width:44px;height:44px;font-size:0;overflow:hidden;box-shadow:inset 0 0 0 4px #f2b324,0 3px #9a6406}#reward dd{font-family:var(--game);color:#ffd23f;text-shadow:var(--stroke);white-space:nowrap;margin:0;font-size:44px}#continue{background:#43c95d;border:0;border-radius:18px;justify-content:center;align-items:center;width:calc(100% - 40px);height:60px;display:flex;box-shadow:inset 0 -7px #23923a,0 5px #15582a}#continue svg{fill:#fff;stroke:#15582a;stroke-width:2px;stroke-linejoin:round;width:40px;height:30px}#continue .again{fill:none;stroke:#fff;stroke-width:4.5px;stroke-linecap:round;display:none}#app[data-result=defeat] #continue,#app[data-result=draw] #continue{background:#ff8a1f;box-shadow:inset 0 -7px #d0600a,0 5px #7d3500}#app[data-result=defeat] #continue .next,#app[data-result=draw] #continue .next{display:none}#app[data-result=defeat] #continue .again,#app[data-result=draw] #continue .again{display:block}#continue:active:not(:disabled){transform:translateY(3px)}#continue:disabled{opacity:.6}#share{background:var(--navy2);color:#fff;width:calc(100% - 40px);font-family:var(--game);text-shadow:var(--stroke);border:3px solid #4a6191;border-radius:14px;margin:12px 0 0;padding:9px;font-size:16px}#hint{display:none}#save-status{color:#ffb4a8;margin:10px 0 0;font-size:12px;display:block}#app[data-phase=result] #dmg{opacity:0;transition:opacity .2s}#app[data-phase=result][data-result=defeat] canvas,#app[data-phase=result][data-result=draw] canvas{filter:saturate(.3)brightness(.75);transition:filter .4s}#app[data-phase=result] canvas{filter:brightness(.8);transition:filter .4s}#test-ad{text-align:center;color:#294c40;background:#fff9e9;border:0;border-radius:18px;width:min(300px,85vw);padding:28px}#test-ad::backdrop{background:#132a22b3}#ad-timer{padding:24px;font-size:48px}#test-ad button{color:#fff;background:#265b4b;border:0;border-radius:10px;width:100%;margin-top:8px;padding:12px;display:block}#test-ad button:disabled{opacity:.35}#test-ad #ad-cancel{color:#64756a;background:0 0}button:focus-visible{outline-offset:3px;outline:3px solid #fff6b7}@media (width<=350px){#detail{margin:0 9px}.row{grid-template-columns:1fr 68px;padding:0 9px}#cards{gap:6px}.unit-card{flex-basis:56px}#unlock{min-width:84px;padding:0 12px 5px}#detail b{font-size:18px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}.guide-arrow,.tap-ring{animation:none}#place-feedback.show{opacity:1;animation:none}}html[data-icon] header,html[data-icon] footer,html[data-icon] #place-guide,html[data-icon] #outcome{display:none!important}html[data-icon] #app{max-width:none}html[data-icon] #field{bottom:0}#outcome.pop{animation:.42s cubic-bezier(.2,1.4,.4,1) both card-pop}@keyframes card-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.72)}60%{opacity:1}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}#outcome.pop #result-title{animation:.5s cubic-bezier(.2,1.6,.4,1) .12s both title-pop}@keyframes title-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}#reward-total,#gold{display:inline-block}.bump{animation:.36s cubic-bezier(.2,1.6,.4,1) bump}@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.22)}to{transform:scale(1)}}#confetti{pointer-events:none;z-index:4;position:absolute;inset:0;overflow:hidden}#confetti i{opacity:0;border-radius:2px;animation:1.5s ease-in both confetti-fall;display:block;position:absolute;top:34%}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-40px)rotate(0)}to{transform:translate(var(--drift),58vh) rotate(var(--spin));opacity:0}}@media (prefers-reduced-motion:reduce){#outcome.pop,#outcome.pop #result-title,.bump,#confetti i{animation:none}}#gift{z-index:4;background:var(--navy);color:#fff;text-align:center;width:min(320px,86%);box-shadow:inset 0 0 0 4px var(--navy2),0 7px 0 #0f1729,0 14px 30px #0006;border-radius:22px;gap:6px;padding:16px;animation:.5s cubic-bezier(.2,1.6,.4,1) both gift-in;display:grid;position:absolute;top:84px;left:50%;transform:translate(-50%)}#gift>b{font-family:var(--game);text-shadow:var(--stroke);font-size:22px;font-weight:400}#gift span{color:#c7d2ea;font-size:13px}#gift .actions{gap:10px;margin-top:10px;display:flex}#gift button{height:50px;font-family:var(--game);color:#fff;text-shadow:var(--stroke);background:#43c95d;border:0;border-radius:14px;flex:1;padding:0 8px 4px;font-size:20px;position:relative;box-shadow:inset 0 -5px #23923a,0 4px #15582a}#gift button b{font-weight:400}#gift button.secondary{background:var(--navy2);font-size:17px;box-shadow:inset 0 -5px #22304f,0 4px #0f1729}#gift button:disabled{opacity:.6}@keyframes gift-in{0%{opacity:0;transform:translate(-50%,-12px)scale(.8)}to{opacity:1;transform:translate(-50%)scale(1)}}#unlock.gift{background:#ffb02e;box-shadow:inset 0 -6px #d07f0a,0 4px #7d4a00}.fly{z-index:6;pointer-events:none;will-change:transform;font-style:normal;font-weight:900;line-height:1;position:absolute;top:0;left:0}.fly.coin{color:#ffc93c;text-shadow:0 1px #8a5a12,0 0 6px #fff3;font-size:20px}.fly.unit{filter:drop-shadow(0 2px 2px #263d2955);font-size:26px}#gold.shake{background:#ffd2c4;animation:.32s card-shake}#point{pointer-events:none;z-index:2;filter:drop-shadow(0 2px 2px #25413660);font-size:30px;line-height:1;animation:.8s ease-in-out infinite point-up;position:absolute;top:calc(100% - 4px);right:34px}@keyframes point-up{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}#unlock.pointed{animation:1.1s ease-in-out infinite start-nudge;box-shadow:inset 0 -6px #23923a,0 4px #15582a,0 0 0 4px #fff6c2}#slot{z-index:3;color:#fff;font-family:var(--game);text-shadow:var(--stroke);background:#43c95d;border:0;border-radius:18px;align-items:center;gap:7px;padding:8px 18px 12px;font-size:24px;animation:.35s cubic-bezier(.2,1.6,.4,1) slot-in;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%);box-shadow:inset 0 -6px #23923a,0 4px #15582a,0 8px 16px #0003}#slot[hidden]{display:none}#slot svg{filter:drop-shadow(0 2px 0 var(--ink))}#slot .squad{fill:#fff;width:34px;height:25px}#slot .arrow{fill:none;stroke:#fff;stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:15px}#slot b{font-weight:400}#slot b:last-child{color:#fff6a8}#slot.waiting{opacity:.6;filter:saturate(.55)}#slot.shake{animation:.32s slot-shake}@keyframes slot-shake{0%,to{transform:translate(-50%)}25%{transform:translate(calc(-50% - 5px))}50%{transform:translate(calc(5px - 50%))}75%{transform:translate(calc(-50% - 3px))}}#slot:disabled{opacity:.5}@keyframes slot-in{0%{opacity:0;transform:translate(-50%)scale(.6)}to{opacity:1;transform:translate(-50%)scale(1)}}
