:root{--ink:#6b4320;--blue:#283d7c;--paper:#fcebca;--paper-2:#f8e0b0;--line:#86623e;--head:#94a5c8;--win:#3f8a2a;--lose:#c0392b}html,body{min-height:100%}body{-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}.splash{min-height:100vh}.app{max-width:520px;min-height:100vh;padding-bottom:calc(24px + env(safe-area-inset-bottom));margin:0 auto;font-size:15px}.app-head{z-index:20;height:64px;padding:env(safe-area-inset-top) 8px 0;background:url(/img/ptop2.png) 50% 18px repeat-x,linear-gradient(#c98a37,#d19946);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0;box-shadow:0 3px 6px #00000040}.head-logo{background:url(/img/logo.png) 50%/contain no-repeat;width:160px;height:62px}.head-back{color:#fff;text-shadow:0 2px 2px #00000080;cursor:pointer;background:0 0;border:none;width:44px;height:44px;font-size:40px;line-height:36px}.page-title{color:#fff;text-shadow:-1px 0 2px #00000080,0 1px 2px #00000080,1px 0 2px #00000080;margin:12px 12px 0;font-size:1.3em}.app-main{padding:8px 12px}.panel{background:var(--paper);border:2px solid var(--line);border-radius:10px;margin:10px 0;overflow:hidden;box-shadow:0 2px #0003}.panel-title{background:linear-gradient(#a8b7d6, var(--head));color:#fff;text-transform:uppercase;text-shadow:-1px 0 2px #00000080,0 1px 2px #00000080,1px 0 2px #00000080;border-bottom:2px solid #6775a2;justify-content:space-between;align-items:center;margin:0;padding:7px 12px;font-size:.95em;display:flex}.panel-body{padding:10px 12px}.panel-body>p{margin:4px 0 10px}.small{opacity:.85;font-size:.85em}.center{text-align:center}.hl{color:#c0392b}.msg{border-radius:8px;margin:8px 0;padding:8px 10px;font-weight:700}.msg-error{color:#8a2c22;background:#f9d6cf;border:1px solid #c0392b}.code{letter-spacing:3px;color:var(--blue);font-family:monospace;font-size:1.3em}.but{margin:8px 0}.but .but_bg{font-size:1.05em}.but.is-disabled{opacity:.55;filter:grayscale(.5)}.but.is-disabled .but_bg{cursor:default}.row2{gap:10px;display:flex}.row2>.but{min-width:0}.row2>*{flex:1}.button4.wide{margin:10px auto 0;display:block}.but button.but_bg{box-sizing:border-box;cursor:pointer;width:calc(100% - 3px);height:40px;text-shadow:inherit;border:none;padding:0 3px 2px;font-family:inherit;font-weight:700;line-height:1em}.but button.but_bg:disabled{cursor:default}.but button.but_bg:hover{padding-top:2px;padding-bottom:0}.coins img{vertical-align:-4px}.form{flex-direction:column;gap:10px;display:flex}.form label{flex-direction:column;gap:4px;font-size:.9em;font-weight:700;display:flex}.form .field{box-sizing:border-box;width:100%;height:36px;color:var(--blue);font-size:16px}.auth{max-width:420px;margin:0 auto;padding:20px 12px;font-size:15px}.auth-logo{background:url(/img/logo.png) 50%/contain no-repeat;height:114px}.auth-art{background:url(/img/art_recruit.png) 50%/contain no-repeat;height:200px;margin:-10px 0 -20px}.hello{color:#fff;text-shadow:0 1px 2px #0009;justify-content:space-between;margin:6px 2px;display:flex}.hello a{color:#fff}.group-card{background:var(--paper-2);color:var(--ink);border:1px solid #e2c066;border-radius:8px;margin:8px 0;padding:10px;text-decoration:none;display:block}.group-name{color:var(--blue);font-size:1.15em;font-weight:700}.group-meta{opacity:.8;font-size:.8em}.group-status{margin-top:4px}.season-bar{text-align:center;color:#fff;text-shadow:0 1px 2px #0009;font-weight:700}.tabs{gap:4px;margin:10px 0 0;display:flex;overflow-x:auto}.tabs button{border:2px solid var(--line);color:var(--ink);white-space:nowrap;background:#e2c066;border-bottom:none;border-radius:8px 8px 0 0;flex:1;padding:8px 4px;font-size:.85em;font-weight:700}.tabs button.on{background:var(--paper);color:var(--blue)}.today.won .panel-title{background:linear-gradient(#6fbf4a, var(--win))}.today.lost .panel-title{background:linear-gradient(#e2806f, var(--lose))}.versus{text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;margin:6px 0 10px;display:grid}.versus a{color:inherit}.small-versus{color:#fff;text-shadow:0 1px 2px #0009}.vs-big{color:#c0392b;text-shadow:0 1px #fff;font-size:1.4em;font-weight:700}.ready{color:#9a7a55;font-size:.8em}.ready.yes{color:var(--win);font-weight:700}.faction-dot{vertical-align:-1px;border:1px solid #7d4c19;border-radius:3px;width:12px;height:12px;display:inline-block}.match-row{box-sizing:border-box;width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:none;border-bottom:1px dotted #c8a978;align-items:center;gap:6px;padding:8px 6px;text-decoration:none;display:flex}.match-row.done{cursor:pointer}.mr-side{flex:1}.mr-side+.mr-vs+.mr-side{text-align:right}.mr-side.win{color:var(--win);font-weight:700}.mr-side.me{text-decoration:underline}.mr-vs{opacity:.6}.mr-watch{color:var(--blue)}.match-row .res{margin-left:auto;font-weight:700}.res.win{color:var(--win)}.res.lose{color:var(--lose)}.cal-day{background:var(--paper);border:2px solid var(--line);border-radius:8px;margin:8px 0;padding:4px 8px}.cal-day.current{border-color:var(--blue);box-shadow:0 0 0 2px #a8b7d6}.cal-head{color:var(--blue);font-size:.85em;font-weight:700}table.standings{border-collapse:collapse;width:100%}table.standings th{background:var(--head);color:#fff;padding:5px 3px;font-size:.85em}table.standings td{text-align:center;border-top:1px solid #f2ddb8;padding:8px 3px}table.standings td:nth-child(2){text-align:left}table.standings tr{cursor:pointer}table.standings tr.me td{background:#e2c066}ul.news li{border-bottom:1px dotted #c8a978;padding:6px 0}.army-stats{align-items:center;gap:10px;margin:8px 0;display:flex}.money-badge,.power-badge{color:#fff;box-sizing:border-box;background:url(/img/money.png) no-repeat;width:86px;height:36px;padding:8px 0 0 37px;font-weight:700}.power-badge{background-image:url(/img/power.png)}.small-badge{margin-top:6px}.pts{color:#fff;text-shadow:0 1px 2px #0009}.troop-grid,.cand-grid{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.troop{cursor:pointer;background:0 0;border:none;padding:0}.cand{cursor:pointer;border:2px solid #0000;border-radius:8px;width:72px;padding:4px}.cand.selected{border-color:var(--blue);background:#fff}.cand.taken{opacity:.35;cursor:default}.cand-skills{justify-content:center;gap:2px;margin-top:2px;display:flex}.skill-icon{cursor:pointer;vertical-align:middle;border:none;border-radius:4px;flex:none;width:30px;height:30px;padding:0;display:inline-block}.skill-icon.off{opacity:.15}.skill-grid{flex-wrap:wrap;gap:6px;display:flex}.skill-grid .item{opacity:.3;cursor:pointer}.skill-grid .item.on{opacity:1}.skill-head{align-items:center;gap:10px;display:flex}.skill-head h3{color:var(--blue);margin:0}.skill-info p{margin:8px 0}.flavor{color:var(--blue);font-size:.9em;font-style:italic}.weapon-stats li{padding:2px 0}.trooper-head{align-items:center;gap:12px;display:flex}.lvl{color:var(--blue);font-size:1.2em;font-weight:700}.levelup-choice{text-align:left;color:#fff;width:100%;font:inherit;cursor:pointer;background:linear-gradient(#5d72a8,#3c5288);border:2px solid #6775a2;border-radius:8px;align-items:center;gap:10px;margin:6px 0;padding:10px;display:flex}.levelup-choice small{opacity:.9;font-size:.8em;display:block}.sheet-backdrop{z-index:100;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet-card{background:var(--paper);border-top:3px solid var(--line);width:100%;max-width:520px;max-height:70vh;padding:14px 16px calc(14px + env(safe-area-inset-bottom));box-sizing:border-box;border-radius:14px 14px 0 0;font-size:15px;overflow:auto}.stage{background:#2b2b2b;border-radius:8px;outline:3px solid #c48d07;width:100%;overflow:hidden}@media (orientation:landscape){.stage{border-radius:0;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}}.canvas-replay{width:720px;height:440px}.avatar{vertical-align:top;width:72px;height:71px;display:inline-block}.avatar-loading{opacity:.25;background:url(/img/plus.png) 50%/60% no-repeat;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.tgrid-wrap{justify-content:center;width:100%;display:flex}.tgrid{position:relative}.tgrid-cell{cursor:pointer;box-sizing:border-box;background:0 0;border:2px solid #0000;border-radius:6px;padding:0;position:absolute}.tgrid-cell.static{cursor:default}.tgrid-cell.selected{border-color:#283d7c;box-shadow:inset 0 0 0 2px #fff}.tgrid-cell.dimmed{cursor:default;background:#fcebcab3}.cand-info{background:var(--paper-2);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;padding:6px 8px;display:flex}
