/* Graphical battlefield v1.6.33 — developed by GaryOver50 */
.tor-battle-scene{border:1px solid #a18750;border-radius:9px;overflow:hidden;background:#191d16;color:#f5e8c5;box-shadow:0 8px 25px #0006}
.tbs-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;background:linear-gradient(#302d22,#171a15);font:13px Georgia,serif;border-bottom:1px solid #957c47}
.tbs-header b{color:#f4d69b;font-size:16px}.tbs-header button{padding:4px 7px;font-size:11px;background:#352f21;color:#f5e8c5;border:1px solid #a18750;border-radius:4px}.tbs-clock{font-variant-numeric:tabular-nums;color:#f6d482;min-width:32px}
.tbs-stage{position:relative;width:100%;aspect-ratio:3/2;isolation:isolate;background:#8d784d center/cover no-repeat;overflow:hidden}
.tbs-tiles,.tbs-figures,.tbs-effects{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.tbs-cell{position:absolute;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#e7c4750b!important;color:#fae3ab!important;pointer-events:auto;box-shadow:inset 0 0 0 1px #f7e0a044;cursor:default;min-height:0!important;opacity:1!important}
.tbs-cell span{position:absolute;bottom:3px;left:50%;font:10px sans-serif;opacity:0}.show-grid .tbs-cell{background:#ffe4a328!important}.show-grid .tbs-cell span{opacity:.75}
.tbs-cell.current{background:#67c7ed35!important;box-shadow:inset 0 0 12px #93d7ff88}.tbs-cell.reachable{background:#54b8dd28!important;cursor:pointer}.tbs-cell.reachable:hover,.tbs-cell:focus-visible{background:#7fd8ff66!important;outline:2px solid #b0e8ff!important}
.tbs-token{position:absolute;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important;pointer-events:auto;cursor:pointer;min-width:0;min-height:0;transition:left .65s ease,top .65s ease;overflow:visible;color:#fff!important}
.tbs-art{display:block;width:100%;height:auto;aspect-ratio:3/4;position:relative;filter:drop-shadow(0 4px 3px #0009)}.tbs-art:after{content:'';position:absolute;left:12%;right:12%;height:10%;bottom:-1%;border-radius:50%;box-shadow:0 1px 2px #0009;border:1px solid #79da8b88;z-index:-1}
.tbs-art img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}.tbs-placeholder{display:grid;place-items:center;height:100%;border-radius:40%;background:#443e2e;color:#edcf92;font-size:30px}
.tbs-name{display:block;background:#181810dd;border:1px solid #9d824d99;border-radius:3px;padding:2px 3px;max-width:150%;width:max-content;font:clamp(8px,1vw,12px) Georgia,serif;white-space:nowrap;line-height:1.1}
.tbs-vitals{width:95%;display:block;text-align:center;font:clamp(8px,1vw,12px) sans-serif;font-weight:bold;line-height:1.2;color:white;text-shadow:0 1px 3px #000,1px 0 2px #000}
.tbs-health{display:block;height:5px;background:#1b1a17;border:1px solid #cab77c;border-radius:2px;overflow:hidden;margin:2px 0 4px}.tbs-health i{display:block;height:100%;background:#78bd58;transition:width .4s}.tbs-token.enemy .tbs-health i{background:#cb6653}
.tbs-token.selected .tbs-art{filter:drop-shadow(0 0 5px #ffd364)}.tbs-token.selected .tbs-art:after{border:2px solid #ffd364;box-shadow:0 0 9px #ffb329}.tbs-token.self .tbs-art:after{border:2px solid #6dcefa}.tbs-token:focus-visible{outline:2px solid #fae39d!important}
.tbs-token.fallen .tbs-art{filter:grayscale(1);opacity:.5;transform:rotate(-65deg) scale(.8);transform-origin:center bottom}
.tbs-status{padding:8px 11px;font-size:11px;color:#d7c8a4;border-top:1px solid #796944}
.tbs-bubble{position:absolute;bottom:110%;left:50%;transform:translateX(-50%);width:max-content;max-width:170px;padding:7px 10px;border-radius:7px;background:#f6e7c8;color:#302518;font:12px Georgia,serif;white-space:normal;box-shadow:0 2px 7px #0006;z-index:150}.tbs-bubble[hidden]{display:none}
.tbs-float{position:absolute;top:25%;font:bold 20px sans-serif;text-shadow:0 1px 3px #000;animation:tbs-float 1.8s ease-out forwards;pointer-events:none}.tbs-float.damage{color:#ffb0a0}.tbs-float.heal{color:#adff99}
.tbs-effects{z-index:120;overflow:visible}.tbs-bolt{stroke:#b0e6ff;stroke-width:.65;stroke-dasharray:4 2;filter:drop-shadow(0 0 2px #48b6ff);animation:tbs-bolt .8s linear both}
.tbs-token.acting .tbs-art{animation:tbs-strike .6s ease}
#battleWatch{inset:4% max(3%,calc((100vw - 1000px)/2));padding:12px;border-radius:10px}#battleWatch h2{font:18px Georgia,serif;margin:8px 0}#battleWatch .battle-watch-log{max-height:180px;overflow:auto;font-size:13px;padding:0 10px}#battleWatch .battle-watch-log p{margin:7px 0}
#battleTactical{grid-column:1/-1;min-width:0}.combat-center:has(#battleTactical){min-width:0}
@keyframes tbs-float{to{transform:translateY(-50px);opacity:0}}@keyframes tbs-bolt{from{stroke-dashoffset:25;opacity:1}to{stroke-dashoffset:0;opacity:0}}@keyframes tbs-strike{50%{transform:translateY(-5px) rotate(4deg)}}
@media(prefers-reduced-motion:reduce){.tbs-token,.tbs-health i{transition:none}.tbs-float,.tbs-bolt,.tbs-token.acting .tbs-art{animation:none}}
@media(max-width:600px){.tbs-header{padding:7px;font-size:10px;gap:4px}.tbs-header b{font-size:12px}.tbs-name{font-size:8px;padding:2px}.tbs-vitals{font-size:8px}.tbs-bubble{max-width:115px;font-size:10px;padding:5px}.tbs-status{font-size:10px}#battleWatch{inset:2%;padding:7px}}

.tbs-art .pd-figure{display:block;width:100%;height:100%;min-height:0;max-height:none;overflow:visible}
/* Movement spaces remain clickable when a nearby figure extends across their edge. */
.tbs-cell.reachable{z-index:110}

@media(max-width:600px){.tbs-stage{min-height:270px}}

.tbs-bubble{bottom:65%;transform:none;max-width:140px}
