@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pixelify-sans-cyrillic-400-normal-Ckz2YJkH.woff2)format("woff2"),url(/assets/pixelify-sans-cyrillic-400-normal-DfOZNMlW.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pixelify-sans-latin-ext-400-normal-DdH6zlBQ.woff2)format("woff2"),url(/assets/pixelify-sans-latin-ext-400-normal-BkfTUL4s.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pixelify-sans-latin-400-normal-DLrIX9QE.woff2)format("woff2"),url(/assets/pixelify-sans-latin-400-normal-JapMNN6Z.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/pixelify-sans-cyrillic-600-normal-BhqNJYOZ.woff2)format("woff2"),url(/assets/pixelify-sans-cyrillic-600-normal-B3EuUOZG.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/pixelify-sans-latin-ext-600-normal-Dha6RiOG.woff2)format("woff2"),url(/assets/pixelify-sans-latin-ext-600-normal-CDaIumwU.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/pixelify-sans-latin-600-normal-Dd_Dy7u5.woff2)format("woff2"),url(/assets/pixelify-sans-latin-600-normal-BNlgYbDL.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/silkscreen-latin-ext-400-normal-2T9bWrxp.woff2)format("woff2"),url(/assets/silkscreen-latin-ext-400-normal-Drdn_BEM.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/silkscreen-latin-400-normal-CtPo2yA5.woff2)format("woff2"),url(/assets/silkscreen-latin-400-normal-D0DfPJut.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0c0a12;--panel:#1a1526;--panel2:#251e36;--panel3:#30284a;--edge:#07060b;--bronze:#8a6a3a;--gold:#f0c860;--gold2:#ffe7a0;--text:#f1e8d6;--muted:#a89cbc;--red:#ec4b3f;--blue:#3f93ee;--green:#4cc85c;--yellow:#f4c83c;--purple:#a86ff2;--hp:#e0433a;--font:"Pixelify Sans", system-ui, sans-serif;--title:"Silkscreen", "Pixelify Sans", monospace}*{box-sizing:border-box;touch-action:manipulation}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:0;font-size:17px;overflow:hidden}img{image-rendering:pixelated;-webkit-touch-callout:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}img:not(.tip){pointer-events:none}button{font-family:inherit;font-size:inherit;color:inherit}#app{position:fixed;inset:0;overflow:hidden}.screen{animation:.35s fadein;position:absolute;inset:0;overflow:hidden}@keyframes fadein{0%{opacity:0}}.panel{background:linear-gradient(180deg, var(--panel2), var(--panel));border:3px solid var(--edge);box-shadow:inset 0 0 0 2px var(--bronze), inset 0 0 0 4px var(--edge), inset 0 2px 0 5px #ffffff0d, 0 6px 0 #00000073;border-radius:4px;padding:14px 16px}.btn{border:2px solid var(--edge);box-shadow:inset 0 2px 0 #ffffff24, inset 0 -3px 0 #00000059, 0 3px 0 var(--edge);cursor:pointer;font-family:var(--title);letter-spacing:.5px;text-transform:uppercase;color:var(--text);background:linear-gradient(#43375f,#2c2442);border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:14px;transition:transform 60ms,filter .1s;display:inline-flex}.btn:hover:not(:disabled){filter:brightness(1.18);color:var(--gold2)}.btn:active:not(:disabled){box-shadow:inset 0 2px 0 #ffffff24, 0 1px 0 var(--edge);transform:translateY(2px)}.btn:disabled{opacity:.45;cursor:default}.btn.gold{color:#1c1206;background:linear-gradient(#e9b94a,#a8741e)}.btn.gold:hover:not(:disabled){color:#000}.btn.danger{background:linear-gradient(#a8392f,#6e1f19)}.btn.small{padding:5px 10px;font-size:11px}.btn.icon{padding:6px 9px}h1,h2,h3{font-family:var(--title);color:var(--gold);text-shadow:0 2px #000;margin:0 0 10px;font-weight:400}h2{font-size:20px}h3{font-size:15px}.muted{color:var(--muted)}.gold-text{color:var(--gold)}.row{align-items:center;gap:10px;display:flex}.col{flex-direction:column;gap:10px;display:flex}.grow{flex:1}.num{font-family:var(--title)}.bar{border:2px solid var(--edge);background:#0b0910;border-radius:3px;height:16px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0f}.bar .fill{width:0;transition:width .35s;position:absolute;inset:0 auto 0 0;box-shadow:inset 0 3px #ffffff47,inset 0 -3px #00000040}.bar .ghost{background:#fff5;transition:width .8s .25s;position:absolute;inset:0 auto 0 0}.bar .lbl{font-family:var(--title);text-shadow:0 1px #000,1px 0 #000,-1px 0 #000,0 -1px #000;justify-content:center;align-items:center;font-size:11px;display:flex;position:absolute;inset:0}.bar.hp .fill{background:linear-gradient(90deg,#b8241c,#f05548)}.bar.shield .fill{background:#7fd0ff}.fill.red{background:var(--red)}.fill.blue{background:var(--blue)}.fill.green{background:var(--green)}.fill.yellow{background:var(--yellow)}.fill.xp{background:linear-gradient(90deg, #7b3fd0, var(--purple))}.title-screen{background-position:50%;background-size:cover;flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex}.title-screen:before{content:"";background:radial-gradient(#0c0a1226,#0c0a12d9);position:absolute;inset:0}.title-screen>*{position:relative}.title-plate{background:radial-gradient(#0a0810c7 30%,#0a081000 72%);flex-direction:column;align-items:center;gap:10px;padding:22px 34px 26px;display:flex}.logo{font-family:var(--title);letter-spacing:4px;color:var(--gold);text-shadow:0 4px #6a3d10,0 8px #000,0 0 30px #ffc85a66;align-items:center;gap:10px;font-size:clamp(44px,10vw,96px);animation:4s ease-in-out infinite logo;display:flex}.logo img{height:.8em}.subtitle{font-family:var(--title);color:var(--gold2);letter-spacing:3px;text-shadow:0 2px #000;font-size:16px}@keyframes logo{50%{transform:translateY(-6px)}}.menu{flex-direction:column;gap:12px;min-width:260px;margin-top:16px;display:flex}.menu .btn{padding:13px 20px;font-size:16px}.credit{color:var(--muted);font-size:12px;bottom:10px;position:absolute!important}.class-screen{background:radial-gradient(ellipse at top, #2a1f3f, var(--bg));flex-direction:column;align-items:center;padding:24px 16px;display:flex;overflow-y:auto}.class-grid{grid-template-columns:repeat(4,minmax(0,230px));gap:16px;margin:12px 0;display:grid}.class-card{cursor:pointer;text-align:center;filter:saturate(.6)brightness(.8);flex-direction:column;gap:8px;transition:transform .15s,filter .15s;display:flex}.class-card:hover{filter:none;transform:translateY(-4px)}.class-card.sel{filter:none;box-shadow:inset 0 0 0 2px var(--gold), inset 0 0 0 4px var(--edge), 0 0 24px #f0c86059, 0 6px 0 #00000073}.class-card img.portrait{aspect-ratio:1;border:2px solid var(--edge);width:100%}.class-card .cname{font-family:var(--title);color:var(--gold);font-size:14px}.class-card .blurb{color:var(--muted);min-height:3.4em;font-size:14px}.class-detail{grid-template-columns:1fr 1fr;gap:16px;width:100%;max-width:960px;display:grid}.spell-list{grid-template-columns:1fr 1fr;gap:6px;display:grid}.mini-spell{align-items:center;gap:8px;font-size:13px;display:flex}.mini-spell img{border:2px solid var(--edge);flex:none;width:32px;height:32px}.mini-spell .lv{font-family:var(--title);color:var(--muted);font-size:10px}input.name{font-family:var(--title);color:var(--gold2);border:2px solid var(--edge);box-shadow:inset 0 0 0 1px var(--bronze);-webkit-user-select:text;user-select:text;background:#0b0910;border-radius:3px;outline:none;width:220px;padding:9px 12px;font-size:16px}.stats{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:4px 12px;font-size:14px;display:grid}.stat{justify-content:space-between;gap:6px;display:flex}.stat b{font-family:var(--title);font-weight:400}.dot{border:2px solid var(--edge);vertical-align:middle;width:10px;height:10px;margin-right:4px;display:inline-block}.dot.red{background:var(--red)}.dot.blue{background:var(--blue)}.dot.green{background:var(--green)}.dot.yellow{background:var(--yellow)}.map-screen{background:#1d4f93}.map-wrap{touch-action:pan-x pan-y;position:absolute;inset:0;overflow:hidden}.map-inner{transform-origin:0 0;position:absolute}.map-inner>img.mapimg{width:100%;height:100%;display:block}.map-inner svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.node{cursor:pointer;z-index:2;flex-direction:column;align-items:center;display:flex;position:absolute;transform:translate(-50%,-50%)}.node .pin{border:3px solid var(--edge);background:linear-gradient(135deg, #fff3c2, var(--gold) 50%, #9b6a18);width:26px;height:26px;transition:transform .15s;transform:rotate(45deg);box-shadow:0 3px #00000080}.node.lieu .pin{background:linear-gradient(135deg,#d6ffd0,#5ec35a 50%,#276d27)}.node.repaire .pin{background:linear-gradient(135deg,#ffd0c8,#e0523f 50%,#7a1d14)}.node.citadelle .pin{background:linear-gradient(135deg,#eadcff,#9a6ef0 50%,#43207a);width:32px;height:32px}.node:hover .pin{transform:rotate(45deg)scale(1.2)}.node .nname{font-family:var(--title);white-space:nowrap;border:1px solid var(--edge);text-shadow:0 1px #000;background:#0a0810d1;border-radius:3px;margin-top:6px;padding:2px 6px;font-size:11px}.node .marker{font-family:var(--title);color:var(--gold);text-shadow:0 2px #000,0 0 10px #ffd25ae6;font-size:18px;animation:1s ease-in-out infinite bob;position:absolute;top:-30px}.node .marker.side{color:#cfd8ff}.node .marker.fight{color:#ff8a70}@keyframes bob{50%{transform:translateY(-5px)}}.hero-token{z-index:3;pointer-events:none;width:46px;height:46px;transition:left .6s ease-in-out,top .6s ease-in-out;position:absolute;transform:translate(-50%,-115%)}.hero-token img{border:3px solid var(--gold);width:100%;height:100%;box-shadow:0 0 0 2px var(--edge), 0 4px 10px #0009;object-fit:cover;background:#000;border-radius:50%}.region-label{font-family:var(--title);letter-spacing:2px;opacity:.9;pointer-events:none;text-shadow:0 2px #000,0 0 6px #000,0 0 3px #000;white-space:nowrap;font-size:13px;position:absolute;transform:translate(-50%,-50%)}.loc-panel h2{cursor:pointer}.loc-panel.min>:not(.kind):not(h2){display:none}.loc-panel.min h2{margin:0}.fog{filter:grayscale(.8)brightness(.8);opacity:.85}.hud{z-index:10;pointer-events:none;flex-wrap:wrap;align-items:center;gap:10px;display:flex;position:absolute;top:10px;left:10px;right:10px}.hud>*{pointer-events:auto}.hud .who{align-items:center;gap:10px;padding:6px 12px 6px 6px;display:flex}.hud .who img{border:2px solid var(--edge);width:44px;height:44px}.hud .xp{width:140px;height:10px}.hud .gold{font-family:var(--title);color:var(--gold)}.hud .btns{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.badge{background:var(--red);color:#fff;text-align:center;border-radius:9px;min-width:18px;margin-left:4px;padding:0 5px;font-size:11px;display:inline-block}.loc-panel{z-index:10;flex-direction:column;width:min(390px,100vw - 24px);max-height:calc(100% - 100px);display:flex;position:absolute;bottom:12px;right:12px;overflow:hidden}.loc-panel .actions{min-height:0;padding:2px 4px 4px 0;overflow-y:auto}.loc-panel .kind{color:var(--muted);font-size:12px;font-family:var(--title)}.loc-panel p{margin:6px 0 12px;font-size:15px;line-height:1.35}.actions{flex-direction:column;gap:8px;display:flex}.actions .btn{text-align:left;text-transform:none;font-family:var(--font);justify-content:flex-start;font-size:15px}.actions .btn .tag{font-family:var(--title);color:var(--gold);background:#0006;border-radius:3px;padding:2px 5px;font-size:10px}.modal-bg{z-index:100;background:#050409b8;justify-content:center;align-items:center;padding:12px;animation:.2s fadein;display:flex;position:fixed;inset:0}.modal{flex-direction:column;width:100%;max-width:920px;max-height:calc(100% - 12px);animation:.22s pop;display:flex;position:relative;overflow:hidden}.modal.fixed{height:min(760px,100% - 12px)}.modal-head{border-bottom:2px solid #00000059;flex:none;margin-bottom:10px;padding-bottom:8px;padding-right:44px}.modal-head h2{margin-bottom:4px}.modal-head .tabs{margin-bottom:0}.modal-body{scrollbar-gutter:stable;flex:1;min-height:0;padding-right:6px;overflow-y:auto}.modal .close{z-index:2}*{scrollbar-width:thin;scrollbar-color:var(--bronze) #0b0910}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{border:2px solid var(--edge);background:#0b0910}::-webkit-scrollbar-thumb{background:linear-gradient(90deg, #b08a4c, var(--bronze));border:2px solid var(--edge);box-shadow:inset 0 2px #fff3}::-webkit-scrollbar-corner{background:#0b0910}@keyframes pop{0%{opacity:0;transform:scale(.94)}}.modal .close{position:absolute;top:10px;right:10px}.tabs{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.tabs .btn.on{color:var(--gold2);border-color:var(--gold);background:linear-gradient(#5a4a7e,#3a2f55)}.item-row{border:2px solid var(--edge);background:#0003;border-radius:3px;align-items:center;gap:10px;padding:8px;display:flex}.item-row img.ic{border:2px solid var(--edge);background:#0006;flex:none;width:40px;height:40px}.item-row .iname{font-family:var(--title);color:var(--gold2);font-size:13px}.item-row .idesc{color:var(--muted);font-size:13px}.item-row.legend .iname{color:#ffb3ff;text-shadow:0 0 8px #d27bff}.grid2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.dialog-bg{z-index:120;cursor:pointer;background:linear-gradient(#0000 30%,#050409d9);justify-content:center;align-items:flex-end;padding:16px;animation:.25s fadein;display:flex;position:fixed;inset:0}.dialog{align-items:flex-end;gap:16px;width:min(900px,100%);min-height:150px;display:flex}.dialog .face-frame{background:linear-gradient(180deg, var(--panel2), var(--panel));border:3px solid var(--edge);box-shadow:inset 0 0 0 2px var(--bronze), inset 0 0 0 4px var(--edge), inset 0 2px 0 5px #ffffff0f, 0 6px 0 #00000080;border-radius:4px;flex:none;padding:6px;animation:.25s pop;position:relative}.dialog .face-frame:before,.dialog .face-frame:after{content:"";pointer-events:none;background:linear-gradient(135deg, #fff1c4, var(--gold) 45%, #9b6a18) top left / 6px 6px no-repeat, linear-gradient(135deg, #fff1c4, var(--gold) 45%, #9b6a18) top right / 6px 6px no-repeat, linear-gradient(135deg, #fff1c4, var(--gold) 45%, #9b6a18) bottom left / 6px 6px no-repeat, linear-gradient(135deg, #fff1c4, var(--gold) 45%, #9b6a18) bottom right / 6px 6px no-repeat;position:absolute;inset:-3px}.dialog .face-frame:after{border:2px solid var(--gold);opacity:.75;background:0 0;border-radius:2px;inset:4px}.dialog .face{border:2px solid var(--edge);object-fit:cover;background:#000;width:144px;height:144px;display:block}.dialog .face.ghost{filter:sepia(.5)brightness(1.3)drop-shadow(0 0 12px #ffe7a0)}.dialog .box{flex-direction:column;flex:1;min-height:166px;display:flex}.dialog .speaker{font-family:var(--title);color:var(--gold);margin-bottom:6px;font-size:15px}.dialog .text{flex:1;font-size:19px;line-height:1.4}.dialog.narr .text{color:#d9cfe8;font-style:italic}.dialog .next{font-family:var(--title);color:var(--muted);align-self:flex-end;font-size:11px;animation:1s infinite bob}.dialog .box{position:relative}.dialog .box>.skip{position:absolute;top:10px;right:10px}.dialog .speaker{padding-right:90px}.battle-screen{background-position:50%;background-size:cover}.battle-screen:before{content:"";background:#08060e8c;position:absolute;inset:0}.battle{justify-content:center;align-items:start;gap:12px;padding:12px;display:grid;position:absolute;inset:0}.battle.wide{grid-template-columns:minmax(250px,300px) auto minmax(250px,300px)}.battle.tall{grid-template-rows:auto auto auto;grid-template-columns:1fr;align-content:start;gap:6px;padding:6px}.board-wrap{align-self:start;padding:6px;position:relative}.board-wrap canvas{touch-action:none;cursor:pointer;display:block}.board-wrap.turn-p{box-shadow:inset 0 0 0 2px var(--gold), inset 0 0 0 4px var(--edge), 0 0 18px #f0c86059, 0 6px 0 #00000073}.board-wrap.turn-e{box-shadow:inset 0 0 0 2px #ff6b5a, inset 0 0 0 4px var(--edge), 0 0 18px #ff6b5a4d, 0 6px 0 #00000073}.turn-flag{opacity:0;pointer-events:none;font-family:var(--title);white-space:nowrap;border:2px solid var(--edge);box-shadow:inset 0 2px 0 #ffffff4d, inset 0 -3px 0 #0000004d, 0 3px 0 var(--edge);z-index:3;border-radius:3px;padding:4px 12px;font-size:13px;transition:opacity .2s,transform .2s;position:absolute;bottom:6px;left:50%;transform:translate(-50%)scale(.6)}.fighter.p .turn-flag{color:#1c1206;background:linear-gradient(#ffe08a,#c9922e)}.fighter.e .turn-flag{color:#fff;background:linear-gradient(#ff8a78,#b8352a)}.fighter.active .turn-flag{opacity:1;animation:1.4s ease-in-out infinite flagbob;transform:translate(-50%)scale(1)}@keyframes flagbob{50%{transform:translate(-50%)translateY(-3px)}}.battle.tall .turn-flag,.battle.wide.short .turn-flag{padding:2px 5px;font-size:9px;bottom:2px}.big-announce{font-family:var(--title);color:var(--gold);text-shadow:0 3px #000,0 0 20px #000000e6;pointer-events:none;white-space:nowrap;z-index:5;font-size:clamp(22px,5vw,42px);animation:1.1s forwards announce;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes announce{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}15%{opacity:1;transform:translate(-50%,-50%)scale(1.15)}25%{transform:translate(-50%,-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-60%)scale(1)}}.fighter{flex-direction:column;gap:8px;max-height:calc(100vh - 24px);padding:10px;display:flex;overflow-y:auto}.fighter.active{box-shadow:inset 0 0 0 2px var(--gold), inset 0 0 0 4px var(--edge), 0 0 18px #f0c8604d, 0 6px 0 #00000073}.fighter .top{align-items:center;gap:10px;display:flex}.pwrap{flex:none;position:relative}.fighter .portrait{aspect-ratio:1;border:3px solid var(--edge);object-fit:cover;background:#000;width:100%;display:block}.fighter.hit .portrait{animation:.35s hit}@keyframes hit{20%{filter:brightness(2)sepia()hue-rotate(-40deg)saturate(5);transform:translate(-6px)}50%{transform:translate(5px)}75%{transform:translate(-3px)}}.fighter .fname{font-family:var(--title);color:var(--gold2);font-size:14px;line-height:1.2}.fighter .lvl{color:var(--muted);font-size:11px}.bar.hp{height:20px}.manas{grid-template-columns:1fr 1fr;gap:5px 8px;display:grid}.mana{align-items:center;gap:5px;display:flex}.mana img{flex:none;width:20px;height:20px}.mana .bar{flex:1;height:17px}.mana .bar .lbl{font-size:12px}.mana.pulse .bar{animation:.4s manapulse}@keyframes manapulse{40%{box-shadow:0 0 10px 2px #fff8}}.statuses{flex-wrap:wrap;gap:4px;min-height:20px;display:flex}.st{font-size:11px;font-family:var(--title);border:1px solid var(--edge);background:#0008;border-radius:3px;padding:2px 6px}.st.shield{color:#9fdcff}.st.poison{color:#8ef08e}.st.burn{color:#ff9b5a}.st.stun{color:#ffe36e}.st.rage{color:#ff6b6b}.st.weaken{color:#c79cff}.st.regen{color:#8affc8}.spells{flex-direction:column;gap:6px;display:flex}.spell{text-align:left;border:2px solid var(--edge);cursor:pointer;opacity:.55;filter:saturate(.4);background:linear-gradient(#2f2745,#221c33);border-radius:4px;align-items:center;gap:8px;padding:5px;transition:opacity .2s,filter .2s;display:flex;position:relative;box-shadow:inset 0 1px #ffffff14}.spell img{border:2px solid var(--edge);flex:none;width:36px;height:36px}.spell .sname{font-size:15px;line-height:1.1}.spell .cost{font-family:var(--title);gap:8px;margin-top:3px;font-size:13px;display:flex}.spell .cost span{align-items:center;gap:2px;display:flex}.spell.ready{opacity:1;filter:none;box-shadow:inset 0 0 0 1px var(--gold), 0 0 10px #f0c86059}.spell.ready.clickable:hover{filter:brightness(1.2)}.spell.targeting{box-shadow:inset 0 0 0 2px #fff,0 0 14px #fff8}.c-red{color:var(--red)}.c-blue{color:var(--blue)}.c-green{color:var(--green)}.c-yellow{color:var(--yellow)}.battle-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-top:6px;display:flex}.loot-line{flex-basis:100%;font-size:11px}.tooltip{z-index:200;pointer-events:none;max-width:280px;padding:10px 12px;font-size:14px;position:fixed}.tooltip b{font-family:var(--title);color:var(--gold);font-size:13px;font-weight:400}.dmg{font-family:var(--title);pointer-events:none;text-shadow:0 3px #000,0 0 8px #000;z-index:4;white-space:nowrap;font-size:30px;animation:1.1s ease-out forwards dmg;position:absolute;top:40%;left:50%}.dmg.hurt{color:#ff5a4a}.dmg.heal{color:#7dff9a}.dmg.block{color:#9fdcff;font-size:18px}@keyframes dmg{0%{opacity:0;transform:translate(-50%)scale(.5)}15%{opacity:1;transform:translate(-50%,-10px)scale(1.25)}to{opacity:0;transform:translate(-50%,-60px)scale(1)}}.orb{z-index:50;pointer-events:none;background:currentColor;border-radius:50%;width:12px;height:12px;position:fixed;box-shadow:0 0 10px 3px}.battle.tall .fighter{gap:5px;max-height:none;padding:6px 8px;overflow:visible}.battle.tall .fighter .pwrap{width:58px}.battle.tall .fighter .top{align-items:stretch}.battle.tall .fighter .info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.battle.tall .manas{grid-template-columns:repeat(4,1fr);gap:4px}.battle.tall .mana img{width:14px;height:14px}.battle.tall .mana .bar{height:12px}.battle.tall .mana .bar .lbl{font-size:9px}.battle.tall .statuses{min-height:0}.battle.tall .spells{grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:4px;display:grid}.battle.tall .spell{flex-direction:column;gap:2px;padding:3px}.battle.tall .spell img{aspect-ratio:1;width:100%;height:auto}.battle.tall .spell .sname{display:none}.battle.tall .spell .cost{flex-wrap:wrap;justify-content:center;gap:2px;margin:0;font-size:9px}.battle.wide.short{gap:8px;padding:6px}.battle.wide.short .fighter{gap:5px;max-height:calc(100vh - 12px);padding:6px 8px}.battle.wide.short .fighter .top{flex-direction:row;align-items:flex-start}.battle.wide.short .pwrap{width:64px}.battle.wide.short .fighter .info{flex:1;min-width:0}.battle.wide.short .manas{grid-template-columns:1fr 1fr;gap:3px 6px}.battle.wide.short .mana .bar{height:13px}.battle.wide.short .mana .bar .lbl{font-size:9px}.battle.wide.short .spell{gap:6px;padding:3px}.battle.wide.short .spell img{width:28px;height:28px}.battle.wide.short .spell .sname{font-size:12px}.battle.wide.short .spell .cost{font-size:10px}.battle.tall .board-wrap{justify-self:center}.battle.wide .pwrap{width:100%}.battle.wide .fighter .top{flex-direction:column;align-items:stretch}.battle.wide .fighter .info{flex-direction:column;gap:6px;display:flex}.results{text-align:center;max-width:480px}.results .big{font-family:var(--title);color:var(--gold);text-shadow:0 4px #000;margin:4px 0 10px;font-size:40px}.results .big.lose{color:#ff6b5a}.results .loot{font-family:var(--title);justify-content:center;gap:24px;margin:12px 0;font-size:18px;display:flex}.levelup{font-family:var(--title);color:#b2ff8a;margin:8px 0;font-size:20px;animation:1s ease-in-out infinite logo}.toast{z-index:300;font-family:var(--title);color:var(--gold2);pointer-events:none;white-space:nowrap;padding:10px 18px;font-size:14px;animation:2.6s forwards toast;position:fixed;top:70px;left:50%;transform:translate(-50%)}@keyframes toast{0%{opacity:0;transform:translate(-50%,-10px)}10%,80%{opacity:1;transform:translate(-50%)}to{opacity:0}}.journal-q{border:2px solid var(--edge);background:#0003;border-radius:3px;margin-bottom:8px;padding:10px}.journal-q .qt{font-family:var(--title);color:var(--gold2);font-size:13px}.journal-q.done{opacity:.55}.journal-q .step{color:#ffd9a0;margin-top:4px;font-size:14px}.bestiary{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;display:grid}.beast{border:2px solid var(--edge);background:#0003;gap:10px;padding:8px;font-size:13px;display:flex}.beast img{border:2px solid var(--edge);flex:none;width:72px;height:72px}.beast.unknown img{filter:brightness(0)}.alloc{align-items:center;gap:6px;display:flex}.alloc .btn{padding:2px 8px}@media (max-width:900px){.class-grid{grid-template-columns:repeat(2,minmax(0,200px))}.class-detail,.spell-list,.grid2{grid-template-columns:1fr}.dialog .face{width:84px;height:84px}.dialog .face-frame{padding:4px}.dialog .face-frame:after{inset:2px}.dialog .box{min-height:110px}.dialog .text{font-size:16px}.hud .xp{width:90px}}@media (max-width:560px){.hud .btns .btn .lbl{display:none}.node .nname{font-size:9px}}.battle.wide.tiny .spells{grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:4px;display:grid}.battle.wide.tiny .spell{flex-direction:column;gap:2px}.battle.wide.tiny .spell img{aspect-ratio:1;width:100%;height:auto}.battle.wide.tiny .spell .sname{display:none}.battle.wide.tiny .spell .cost{flex-wrap:wrap;justify-content:center;gap:2px;margin:0;font-size:9px}.battle.wide.tiny .pwrap{width:52px}.loc-panel>*,.actions>*{flex:none}.loc-panel>.actions{flex:0 auto}.pix-range{appearance:none;cursor:pointer;--pct:50%;background:0 0;width:220px;height:18px}.pix-range::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--gold) 0 var(--pct), #0b0910 var(--pct) 100%);border:2px solid var(--edge);height:14px;box-shadow:inset 0 0 0 1px var(--bronze), inset 0 3px 0 #ffffff2e;border-radius:3px}.pix-range::-moz-range-track{border:2px solid var(--edge);height:10px;box-shadow:inset 0 0 0 1px var(--bronze);background:#0b0910;border-radius:3px}.pix-range::-moz-range-progress{background:var(--gold);border:2px solid var(--edge);border-radius:3px;height:10px}.pix-range::-webkit-slider-thumb{-webkit-appearance:none;border:2px solid var(--edge);width:16px;height:24px;box-shadow:inset 0 -3px 0 #0000004d, 0 2px 0 var(--edge);background:linear-gradient(#fff1c4,#c9953c);border-radius:3px;margin-top:-7px}.pix-range::-moz-range-thumb{border:2px solid var(--edge);background:linear-gradient(#fff1c4,#c9953c);border-radius:3px;width:12px;height:20px;box-shadow:inset 0 -3px #0000004d}.pix-range:hover::-webkit-slider-thumb{filter:brightness(1.12)}.pix-range:focus-visible{outline:2px solid var(--gold2);outline-offset:2px}.pix-val{text-align:right;width:48px;color:var(--gold2);font-size:13px;position:relative;top:-1px}.pix-check{appearance:none;cursor:pointer;border:2px solid var(--edge);width:22px;height:22px;box-shadow:inset 0 0 0 1px var(--bronze);background:#0b0910;border-radius:3px;flex:none;place-content:center;margin:0;display:grid}.pix-check:after{content:"";background:var(--gold);width:10px;height:10px;box-shadow:inset 0 2px 0 #ffffff59, 0 0 0 1px var(--edge);transition:transform .1s;transform:scale(0)}.pix-check:checked:after{transform:scale(1)}.pix-check:focus-visible{outline:2px solid var(--gold2);outline-offset:2px}.lang-switch{z-index:5;margin:0;top:12px;right:12px;position:absolute!important}.dialog.narr .text{margin-top:28px}.fighter.e.active{box-shadow:inset 0 0 0 2px #ff6b5a, inset 0 0 0 4px var(--edge), 0 0 18px #ff6b5a4d, 0 6px 0 #00000073}.battle.split{grid-template-columns:1fr 1fr;grid-template-areas:"board board""p e";align-content:start;gap:10px;padding:10px}.battle.split .board-wrap{grid-area:board;justify-self:center}.battle.split .fighter.p{grid-area:p}.battle.split .fighter.e{grid-area:e}.battle.split .fighter{align-self:stretch;max-height:none;overflow:visible}.battle.split .fighter .top{flex-direction:row;align-items:flex-start}.battle.split .pwrap{width:96px}.battle.split .fighter .info{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.battle.split .spells{grid-template-columns:1fr 1fr;gap:5px;display:grid}.battle.split .spell img{width:30px;height:30px}.battle.split .spell .sname{font-size:13px}input,textarea{-webkit-user-select:text;user-select:text}.battle.tall .spells,.battle.wide.tiny .spells,.battle.wide.dense .spells{grid-template-columns:repeat(auto-fill,46px);gap:5px;display:grid}.battle.tall .fighter.e .spells{grid-template-columns:repeat(auto-fill,40px)}.battle.tall .spell,.battle.wide.tiny .spell,.battle.wide.dense .spell{aspect-ratio:1;padding:0;display:block;position:relative;overflow:hidden}.battle.tall .spell>div,.battle.wide.tiny .spell>div,.battle.wide.dense .spell>div{position:absolute;inset:auto 0 0}.battle.tall .spell img,.battle.wide.tiny .spell img,.battle.wide.dense .spell img{border:0;width:100%;height:100%;display:block}.battle.tall .spell .cost,.battle.wide.tiny .spell .cost,.battle.wide.dense .spell .cost{justify-content:center;gap:1px;margin:0;padding:0 1px 1px;font-size:9px;line-height:1;display:flex}.battle.tall .spell .cost span,.battle.wide.tiny .spell .cost span,.battle.wide.dense .spell .cost span{border:1px solid var(--edge);color:#fff;text-shadow:0 1px #000;border-radius:2px;padding:2px 2px 1px}.battle.tall .spell .cost .dot,.battle.wide.tiny .spell .cost .dot,.battle.wide.dense .spell .cost .dot{display:none}.battle.tall .spell .cost .c-red,.battle.wide.tiny .spell .cost .c-red,.battle.wide.dense .spell .cost .c-red{background:#b8322a}.battle.tall .spell .cost .c-blue,.battle.wide.tiny .spell .cost .c-blue,.battle.wide.dense .spell .cost .c-blue{background:#2a6cc0}.battle.tall .spell .cost .c-green,.battle.wide.tiny .spell .cost .c-green,.battle.wide.dense .spell .cost .c-green{background:#2f8f3c}.battle.tall .spell .cost .c-yellow,.battle.wide.tiny .spell .cost .c-yellow,.battle.wide.dense .spell .cost .c-yellow{background:#b48a18}.battle.tall .battle-tools{flex-wrap:nowrap}.battle.tall .loot-line{flex-basis:auto;margin-right:auto;font-size:10px}.battle.wide:not(.short) .pwrap{justify-content:center;display:flex}.battle.wide:not(.short) .fighter .portrait{width:min(100%,30vh)}.battle.wide.dense2 .fighter .portrait{width:min(100%,20vh)}.battle.tall .spell .sname,.battle.wide.dense .spell .sname{display:none}
