html,body{background:#eadcc8;height:100%;margin:0;overflow:hidden}body{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;height:100dvh;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;display:flex}#stage{--u:1px;color:#b48a6a;font-family:ui-rounded,SF Pro Rounded,Arial Rounded MT Bold,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;position:relative;overflow:hidden}#game{touch-action:none;width:100%;height:100%;display:block}button{font:inherit;cursor:pointer;touch-action:manipulation;color:#c79b78;border-radius:calc(10 * var(--u));box-shadow:0 calc(3 * var(--u)) 0 #8c644629;background:#fff;border:none;padding:0;font-weight:800}button:active{transform:translateY(calc(2 * var(--u)));box-shadow:0 calc(1 * var(--u)) 0 #8c644629}#hud{height:calc(64 * var(--u));pointer-events:none;position:absolute;top:0;bottom:auto;left:0;right:0}#hud button{pointer-events:auto;right:calc(8 * var(--u));position:absolute}#recruit{top:calc(5 * var(--u));height:calc(30 * var(--u));padding:0 calc(10 * var(--u)) 0 calc(12 * var(--u));align-items:center;gap:calc(8 * var(--u));color:#fff;font-size:calc(14 * var(--u));box-shadow:0 calc(3 * var(--u)) 0 #d65a7c;background:#ff8fab;display:flex}#recruit .cost{align-items:center;gap:calc(3 * var(--u));padding:calc(2 * var(--u)) calc(7 * var(--u));border-radius:calc(8 * var(--u));color:#c27c00;font-size:calc(13 * var(--u));background:#ffffffeb;display:flex}#recruit:disabled{color:#c9ab8f;box-shadow:0 calc(3 * var(--u)) 0 #8c644629;background:#f0dcc4;transform:none}#recruit:disabled .cost{color:#c9ab8f}.coin{width:calc(10 * var(--u));height:calc(10 * var(--u));box-shadow:0 calc(1.5 * var(--u)) 0 #f4a259;background:#ffd166;border-radius:50%;display:inline-block}#retreat{top:calc(39 * var(--u));height:calc(20 * var(--u));padding:0 calc(9 * var(--u));font-size:calc(11 * var(--u))}.pick{width:calc(320 * var(--u));text-align:center}.pick h2{margin:0 0 calc(12 * var(--u));color:#b48cf2;font-size:calc(22 * var(--u));text-shadow:0 0 calc(6 * var(--u)) #fff, 0 0 calc(6 * var(--u)) #fff}#pick-cards{gap:calc(10 * var(--u));flex-direction:column;display:flex}.card{align-items:center;gap:calc(12 * var(--u));width:100%;padding:calc(12 * var(--u)) calc(14 * var(--u));border-radius:calc(16 * var(--u));box-shadow:0 calc(5 * var(--u)) 0 #8c644633;text-align:left;background:#fffaf3;animation:.25s ease-out both card-in;display:flex}.card:nth-child(2){animation-delay:50ms}.card:nth-child(3){animation-delay:.1s}@keyframes card-in{0%{transform:translateY(calc(16 * var(--u))) scale(.92);opacity:0}}.card .glyph{width:calc(44 * var(--u));height:calc(44 * var(--u));color:#fff;font-size:calc(22 * var(--u));border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:900;display:flex}.card .text{gap:calc(3 * var(--u));flex-direction:column;display:flex}.card b{color:#8a6a52;font-size:calc(16 * var(--u))}.card b small{margin-left:calc(6 * var(--u));color:#ff8fab;font-size:calc(12 * var(--u))}.card span{color:#b48a6a;font-size:calc(13 * var(--u));font-weight:700;line-height:1.35}.overlay{z-index:2;background:#78553c61;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.overlay[hidden]{display:none}.panel{width:calc(260 * var(--u));padding:calc(18 * var(--u));box-sizing:border-box;border-radius:calc(18 * var(--u));box-shadow:0 calc(5 * var(--u)) 0 #643c2838;text-align:center;color:#7a5a45;background:#fffaf3}.panel h2{margin:0 0 calc(6 * var(--u));font-size:calc(24 * var(--u));font-weight:900}.panel p{margin:0 0 calc(10 * var(--u));font-size:calc(13 * var(--u));color:#9b7b66;font-weight:700}.panel .note{font-size:calc(11 * var(--u))}.panel .row{gap:calc(10 * var(--u));justify-content:center;display:flex}.panel button{padding:calc(10 * var(--u)) calc(22 * var(--u));font-size:calc(16 * var(--u));color:#fff;border-radius:calc(14 * var(--u));background:#ff8fab;font-weight:800}.panel button.sub{color:#c79b78;background:#fff}#result-loot{margin:0 auto calc(8 * var(--u));align-items:flex-start;gap:calc(4 * var(--u));width:max-content;max-width:100%;font-size:calc(15 * var(--u));flex-direction:column;padding:0;font-weight:800;list-style:none;display:flex}#result-loot i{width:calc(12 * var(--u));height:calc(12 * var(--u));margin-right:calc(4 * var(--u));border-radius:calc(3 * var(--u));vertical-align:-1px;display:inline-block}.bk-list{gap:calc(8 * var(--u));margin-bottom:calc(14 * var(--u));grid-template-columns:1fr 1fr;display:grid}.panel button.school{align-items:center;gap:calc(2 * var(--u));padding:calc(10 * var(--u)) 0;color:#7a5a45;border:calc(2 * var(--u)) solid #f0dcc4;background:#fff;flex-direction:column;display:flex}.panel button.school b{font-size:calc(18 * var(--u))}.panel button.school small{font-size:calc(11 * var(--u));color:#b48a6a}.panel button.school.on{color:#fff;background:#ff8fab;border-color:#ff8fab}.panel button.school.on small{color:#fff}.panel button:disabled{opacity:.4}#debug select{font:inherit;max-width:calc(170 * var(--u));border-radius:calc(6 * var(--u))}.screen{padding:calc(18 * var(--u)) calc(16 * var(--u));box-sizing:border-box;color:#7a5a45;background:#fff6ea;flex-direction:column;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0;overflow-y:auto}.screen[hidden]{display:none}.screen h1{margin:calc(28 * var(--u)) 0 calc(14 * var(--u));font-size:calc(34 * var(--u));color:#ff8fab;text-shadow:0 calc(3 * var(--u)) 0 #ffd6df;font-weight:900}#hub-backup{top:calc(10 * var(--u));right:calc(10 * var(--u));padding:calc(5 * var(--u)) calc(10 * var(--u));font-size:calc(12 * var(--u));color:#b48a6a;font-weight:800;position:absolute}#backup .panel{width:calc(300 * var(--u))}#backup h3{margin:calc(14 * var(--u)) 0 calc(4 * var(--u));font-size:calc(16 * var(--u));font-weight:900}#backup p{font-size:calc(11.5 * var(--u));margin-bottom:calc(6 * var(--u))}#backup textarea{width:100%;height:calc(64 * var(--u));box-sizing:border-box;padding:calc(6 * var(--u));border:calc(1.5 * var(--u)) solid #f0dcc4;border-radius:calc(8 * var(--u));color:#7a5a45;font:600 calc(10 * var(--u)) / 1.3 ui-monospace, monospace;word-break:break-all;resize:none;background:#fff;display:block}#backup-copy{margin-top:calc(6 * var(--u));padding:calc(6 * var(--u)) calc(18 * var(--u));font-size:calc(14 * var(--u))}#backup-msg{min-height:1.3em;margin:calc(6 * var(--u)) 0;color:#9b7b66}#backup-msg.err{color:#ff5d8f}#backup-msg.ok{color:#4f9a76}#hub-title{margin:calc(16 * var(--u)) 0 calc(10 * var(--u));flex-direction:column;align-items:center;display:flex}#hub-logo{width:calc(300 * var(--u));max-height:calc(130 * var(--u));object-fit:contain}#hub-title small{margin-top:calc(2 * var(--u));font-size:calc(15 * var(--u));letter-spacing:.3em;color:#7a5a45;text-shadow:none;font-weight:900}.screen h2{margin:calc(12 * var(--u)) 0 calc(8 * var(--u));font-size:calc(20 * var(--u));align-self:flex-start;font-weight:900}.mats{gap:calc(6 * var(--u));flex-wrap:wrap;justify-content:center;display:flex}.chip{align-items:center;gap:calc(4 * var(--u));padding:calc(3 * var(--u)) calc(9 * var(--u));border-radius:calc(12 * var(--u));font-size:calc(14 * var(--u));box-shadow:0 calc(2 * var(--u)) 0 #8c64461f;background:#fff;font-weight:800;display:inline-flex}.chip i{width:calc(12 * var(--u));height:calc(12 * var(--u));border-radius:calc(3 * var(--u));display:inline-block}.chip.gem i{background:#b48cf2;border-radius:50%}.chip.short{color:#ff5d8f}#hub-best{margin:calc(10 * var(--u)) 0 calc(12 * var(--u));font-size:calc(13 * var(--u));color:#b48a6a;font-weight:700}#hub-go{width:calc(220 * var(--u));padding:calc(16 * var(--u)) 0;font-size:calc(26 * var(--u));color:#fff;border-radius:calc(20 * var(--u));box-shadow:0 calc(5 * var(--u)) 0 #e46f8d;background:#ff8fab;font-weight:900}.hub-grid{gap:calc(10 * var(--u));width:100%;margin-top:calc(26 * var(--u));grid-template-columns:1fr 1fr;display:grid}.hub-grid button{align-items:center;gap:calc(3 * var(--u));padding:calc(14 * var(--u)) calc(6 * var(--u));font-size:calc(17 * var(--u));color:#7a5a45;flex-direction:column;font-weight:900;display:flex;position:relative}.hub-grid button small{font-size:calc(11 * var(--u));color:#b48a6a;font-weight:700}.hub-grid button:disabled{opacity:.45}.hub-grid button.dot:after{content:"";top:calc(8 * var(--u));right:calc(8 * var(--u));width:calc(10 * var(--u));height:calc(10 * var(--u));background:#ff5d8f;border-radius:50%;position:absolute}#hub-warn{margin-top:calc(18 * var(--u));font-size:calc(11 * var(--u));color:#ff5d8f;text-align:center;font-weight:700}.ws-top{justify-content:space-between;align-items:center;gap:calc(6 * var(--u));width:100%;display:flex}#ws-back,#altar-back,#ex-back{padding:calc(6 * var(--u)) calc(12 * var(--u));font-size:calc(13 * var(--u));flex:none;font-weight:800}#ws-list{gap:calc(9 * var(--u));width:100%;display:grid}.ws-item{padding:calc(10 * var(--u)) calc(12 * var(--u));border-radius:calc(14 * var(--u));box-shadow:0 calc(3 * var(--u)) 0 #8c644624;background:#fffaf3}.ws-head{align-items:baseline;gap:calc(8 * var(--u));font-size:calc(17 * var(--u));font-weight:900;display:flex}.ws-head .lv{font-size:calc(12 * var(--u));color:#b48a6a}.ws-desc{font-size:calc(11.5 * var(--u));color:#9b7b66;font-weight:700}.ws-effect{margin:calc(4 * var(--u)) 0;font-size:calc(13 * var(--u));color:#c0703c;font-weight:800}.ws-foot{justify-content:space-between;align-items:center;gap:calc(8 * var(--u));display:flex}.ws-cost{gap:calc(5 * var(--u));flex-wrap:wrap;display:flex}.ws-cost .chip{font-size:calc(12 * var(--u))}.ws-foot button{padding:calc(7 * var(--u)) calc(16 * var(--u));font-size:calc(14 * var(--u));color:#fff;background:#ff8fab;flex:none;font-weight:900}.ws-foot button:disabled{color:#b8a493;background:#e9ddd0}.screen{padding-bottom:calc(64 * var(--u))}#result-loot{gap:calc(8 * var(--u));font-size:calc(14 * var(--u))}#result-loot li{white-space:nowrap}#result-gems{margin:calc(-4 * var(--u)) 0 calc(12 * var(--u));font-size:calc(12 * var(--u));color:#9a6fd6;line-height:1.5}#altar-go{width:calc(220 * var(--u));margin-top:calc(6 * var(--u));padding:calc(12 * var(--u)) 0;font-size:calc(22 * var(--u));color:#fff;border-radius:calc(18 * var(--u));box-shadow:0 calc(5 * var(--u)) 0 #8f68d0;background:#b48cf2;flex-direction:column;align-items:center;font-weight:900;display:flex}#altar-go small{font-size:calc(12 * var(--u));opacity:.9;font-weight:800}#altar-go:disabled{color:#b8a493;box-shadow:0 calc(5 * var(--u)) 0 #d8c9b8;background:#e9ddd0}#altar-pity{margin:calc(10 * var(--u)) 0 calc(6 * var(--u));font-size:calc(12 * var(--u));color:#9a6fd6;font-weight:800}#altar-rates{gap:calc(4 * var(--u));width:100%;padding:calc(8 * var(--u)) calc(12 * var(--u));box-sizing:border-box;border-radius:calc(12 * var(--u));font-size:calc(11.5 * var(--u));color:#9b7b66;background:#fffaf3;font-weight:700;display:grid}#altar-rates b{font-weight:900}#altar-list{gap:calc(8 * var(--u));grid-template-columns:1fr 1fr;width:100%;display:grid}.al-item{column-gap:calc(8 * var(--u));padding:calc(8 * var(--u));border-radius:calc(12 * var(--u));box-shadow:0 calc(3 * var(--u)) 0 #8c644624;background:#fffaf3;grid-template-columns:auto 1fr;align-items:center;display:grid}.al-item.locked{opacity:.5}.al-item b{font-size:calc(14 * var(--u));font-weight:900}.al-item .stars{font-size:calc(10 * var(--u));color:#ffb020;letter-spacing:-.5px}.al-item .eff{margin-top:calc(5 * var(--u));font-size:calc(10.5 * var(--u));color:#c0703c;grid-column:1/-1;font-weight:800}.glyph{width:calc(34 * var(--u));height:calc(34 * var(--u));color:#fff;font-size:calc(17 * var(--u));box-shadow:inset 0 calc(-3 * var(--u)) 0 #0000001f;border-radius:50%;justify-content:center;align-items:center;font-weight:900;display:inline-flex}#reveal{perspective:calc(800 * var(--u));background:#5a3c2d99;flex-direction:column}#reveal .flip{width:calc(190 * var(--u));height:calc(260 * var(--u));transform-style:preserve-3d;transition:transform .6s cubic-bezier(.3,1.4,.5,1);position:relative}#reveal.open .flip{transform:rotateY(180deg)}#reveal.instant .flip{transition:none}#reveal .face{border-radius:calc(18 * var(--u));-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 calc(5 * var(--u)) 0 #643c2840;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}#reveal .back{color:#fff;font-size:calc(64 * var(--u));background:#b48cf2;font-weight:900}#reveal .front{color:#7a5a45;gap:calc(6 * var(--u));padding-top:calc(26 * var(--u));box-sizing:border-box;background:#fffaf3;justify-content:flex-start;overflow:hidden;transform:rotateY(180deg)}#reveal .front .band{height:calc(26 * var(--u));color:#fff;font-size:calc(12 * var(--u));justify-content:center;align-items:center;font-weight:900;display:flex;position:absolute;top:0;bottom:auto;left:0;right:0}#reveal .front .glyph{width:calc(70 * var(--u));height:calc(70 * var(--u));font-size:calc(34 * var(--u));margin-top:calc(14 * var(--u))}#reveal .front b{font-size:calc(22 * var(--u));font-weight:900}#reveal .front .stars{font-size:calc(16 * var(--u));color:#ffb020}#reveal .front .status{font-size:calc(13 * var(--u));color:#ff5d8f;font-weight:900}#reveal .front .eff{padding:0 calc(12 * var(--u));font-size:calc(11.5 * var(--u));color:#c0703c;text-align:center;font-weight:800}#reveal-tap{margin-top:calc(16 * var(--u));font-size:calc(12 * var(--u));color:#fff;text-shadow:0 1px 3px #50321e99;visibility:hidden;font-weight:800}#reveal.done #reveal-tap{visibility:visible}#mail-list{margin-bottom:calc(14 * var(--u))}.mail-item{padding:calc(10 * var(--u));border-radius:calc(12 * var(--u));text-align:left;background:#fff}.mail-item b{margin-bottom:calc(6 * var(--u));font-size:calc(14 * var(--u));font-weight:900;display:block}.mail-item .mats{justify-content:flex-start}.mail-item .chip{font-size:calc(12 * var(--u));box-shadow:none;background:#fff6ea}.mail-empty{font-size:calc(12 * var(--u));color:#9b7b66;font-weight:700;line-height:1.6}#altar-ex{align-items:baseline;gap:calc(8 * var(--u));margin-bottom:calc(10 * var(--u));padding:calc(7 * var(--u)) calc(18 * var(--u));font-size:calc(15 * var(--u));font-weight:900;display:flex;position:relative}#altar-ex small{font-size:calc(11.5 * var(--u));color:#9a6fd6;font-weight:800}#altar-ex.dot:after{content:"";top:calc(-3 * var(--u));right:calc(-3 * var(--u));width:calc(10 * var(--u));height:calc(10 * var(--u));background:#ff5d8f;border-radius:50%;position:absolute}i.dust{color:#9a6fd6;flex:none;font-style:normal;font-weight:900}i.dust-art{vertical-align:-.2em;background:50%/140% no-repeat;flex:none;width:1.15em;height:1.15em;display:inline-block}.chip i.dust-art{width:calc(12 * var(--u));height:calc(12 * var(--u));vertical-align:0}#exchange h3{margin:calc(12 * var(--u)) 0 calc(6 * var(--u));font-size:calc(15 * var(--u));align-self:flex-start;font-weight:900}.ex-note{margin:0 0 calc(4 * var(--u));font-size:calc(11.5 * var(--u));color:#9b7b66;align-self:flex-start;font-weight:700}#ex-basic{gap:calc(8 * var(--u));grid-template-columns:1fr 1fr;width:100%;display:grid}#ex-basic button{align-items:center;gap:calc(6 * var(--u));padding:calc(9 * var(--u)) calc(10 * var(--u));font-size:calc(14 * var(--u));text-align:left;display:flex}#ex-basic button i:not(.dust){width:calc(16 * var(--u));height:calc(16 * var(--u));border-radius:calc(4 * var(--u));flex:none}#ex-basic b{margin-left:auto;font-weight:900}#ex-list{gap:calc(8 * var(--u));width:100%;display:grid}.ex-item{column-gap:calc(8 * var(--u));padding:calc(8 * var(--u));border-radius:calc(12 * var(--u));box-shadow:0 calc(3 * var(--u)) 0 #8c644624;background:#fffaf3;grid-template-columns:auto 1fr auto;align-items:center;display:grid}.ex-item b{font-size:calc(14 * var(--u));font-weight:900}.ex-item .stars{font-size:calc(10 * var(--u));color:#ffb020;letter-spacing:-.5px}.ex-item .eff{font-size:calc(10.5 * var(--u));color:#c0703c;font-weight:800}.ex-item button{min-width:calc(64 * var(--u));padding:calc(8 * var(--u)) calc(10 * var(--u));font-size:calc(14 * var(--u));font-weight:900}#exchange button:disabled{opacity:.4}button[hidden]{display:none}#hub-title{font-size:calc(40 * var(--u));color:#ff8fab;text-shadow:0 calc(3 * var(--u)) 0 #ffd6df;flex-direction:column;align-items:center;font-weight:900;display:flex}#hub-squad{margin:0 0 calc(14 * var(--u));font-size:calc(13 * var(--u));color:#9b7b66;font-weight:800}#barracks h3{margin:calc(10 * var(--u)) 0 calc(6 * var(--u));font-size:calc(15 * var(--u));text-align:left;font-weight:900}#bk-hint{text-align:left;font-size:calc(11.5 * var(--u))}.panel button.school .glyph{width:calc(30 * var(--u));height:calc(30 * var(--u));font-size:calc(15 * var(--u))}.panel button.school.locked{opacity:.4}#result-loot i{border-radius:calc(3 * var(--u))}#result-stats{margin-bottom:calc(12 * var(--u))}.chip i.art,#result-loot i.art,#exchange i.art{background:50%/140% no-repeat;border-radius:0}.glyph.art{box-shadow:none;background:0 0}.glyph.art img{object-fit:contain;width:118%;height:118%}
