/* Small, code-native cursors. Hotspots are exactly at the drawn tip. */
#game{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath d='M3 2 7 25 12 18 22 17Z' fill='%23f3dfad' stroke='%233a3441' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='m6 7 9 8-5 1Z' fill='%23c69459'/%3E%3C/svg%3E") 3 2,auto}
#game button,#game [role=button]{cursor:inherit}
#game input,#game textarea{cursor:text}
#game.battle-cursor{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cpath d='M3 2 18 9 29 26 25 30 9 18Z' fill='%23e9eef0' stroke='%2325354a' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='m4 3 22 23' stroke='%23fff9df' stroke-width='2'/%3E%3Cpath d='m21 29 9-9M27 28l8 8' stroke='%23caa66d' stroke-width='5'/%3E%3Cpath d='m29 30 5 5' stroke='%234b3540' stroke-width='3'/%3E%3C/svg%3E") 3 2,crosshair}
.combat-card.current-turn:after{content:'';position:absolute;inset:4px 5px;border:2px solid #f0d18c;border-radius:16px;pointer-events:none;z-index:5;box-shadow:inset 0 0 13px #edc87222}
.combat-turn-label{position:absolute;left:14px;top:-17px;z-index:6;background:#223149;border:1px solid #e3c687;border-radius:6px;padding:2px 12px;color:#ffe4a7;font-size:19px}
.combat-skill[aria-disabled=true]>img{filter:brightness(.5) saturate(.65)}
.combat-skill.armed{outline:3px solid #f6d48c;outline-offset:2px;box-shadow:0 0 13px #e3bd7655;filter:none;animation:manual-armed 1.7s ease-in-out infinite}
.combat-skill.armed .skill-reserved{top:27px;background:#17243bcc;border-radius:7px;font-size:19px;line-height:26px;color:#ffe4a7}
.combat-skill:focus-visible,.manual-target:focus-visible{outline:3px solid #fff0ba;outline-offset:3px}
@keyframes manual-armed{50%{box-shadow:0 0 19px #e3bd7688}}
#manual-command{position:absolute;left:420px;right:240px;top:145px;z-index:7;pointer-events:none;text-align:center;color:#f9e8c7;text-shadow:0 2px 3px #102033}
#manual-command:not(:empty){padding:10px 20px;background:linear-gradient(90deg,#17253b00,#17253bee 20%,#17253bee 80%,#17253b00)}
#manual-command strong{display:block;font-size:27px;color:#ffe0a0}#manual-command span{display:block;font-size:20px;margin-top:4px}
#manual-targets{position:absolute;inset:0;pointer-events:none;z-index:3}.manual-target{position:absolute;border:0;background:transparent;pointer-events:auto;border-radius:24px;touch-action:manipulation}
.manual-target:focus-visible{background:#f5d99612}.combat-ally-target{position:absolute;left:20px;top:10px;width:135px;height:137px;background:transparent;border:2px solid #aadfcb;border-radius:50%;z-index:4}
#manual-skill-tooltip{position:absolute;left:1028px;top:230px;width:620px;box-sizing:border-box;padding:18px 22px;background:#18283ef5;border:2px solid #c5ae7c;border-radius:12px;z-index:13;color:#f6ebd8;box-shadow:0 7px 20px #07112055;pointer-events:none;font:22px/1.35 ArcanaJua}
#manual-skill-tooltip:empty{display:none}#manual-skill-tooltip strong{display:block;font-size:27px;color:#ffe0a4}#manual-skill-tooltip p{margin:10px 0;}#manual-skill-tooltip span{display:block;font-size:20px;border-top:1px solid #9f916066;padding-top:8px}.usable{color:#c1e8d4}.unavailable{color:#dec8b9}
.reduce-motion .combat-skill.armed{animation:none}@media(prefers-reduced-motion:reduce){.combat-skill.armed{animation:none}}

#field-status{z-index:4}
/* Reference-led hierarchy: one actor on the left, only that actor's three actions on the right. */
#battle-hud.combat-hud{display:block;left:0;right:0;top:741px;height:200px;background:linear-gradient(0deg,#0d1b30f5,#12243dd9 75%,#12243d00);border-bottom:3px solid #bc9d67}
.actor-v33-panel{position:absolute;left:28px;top:18px;width:545px;height:168px;display:flex;align-items:center;gap:24px}
.actor-v33-portrait{width:148px;height:148px;border:3px solid #d5b67b;border-radius:50%;background:#182b43;object-fit:cover;box-shadow:0 0 0 5px #12243d,0 0 0 6px #907953}
.actor-v33-copy{width:335px;color:#f2e3ca}.actor-v33-copy small{display:block;color:#ebc880;font-size:19px}.actor-v33-copy strong{font-size:34px;font-weight:400;margin-right:15px}.actor-v33-copy>span{font-size:20px;color:#bdcbd0}.actor-v33-copy>b{display:block;font-size:19px;font-weight:400;margin-top:6px;text-align:right;font-variant-numeric:tabular-nums}
.actor-v33-life{margin-top:14px;width:100%;height:15px;border:1px solid #adbb92;border-radius:6px;background:#122532;overflow:hidden}.actor-v33-life i,.party-v33-life i{display:block;height:100%;background:#91c997}
.actor-v33-wait{position:absolute;left:52px;top:79px;color:#d5cbb8;font-size:28px}
.party-v33-strip{position:absolute;left:637px;top:50px;display:flex;gap:16px}
.party-v33-member{position:relative;width:82px;text-align:center;color:#d0d8d7}.party-v33-member>img{width:66px;height:66px;border:2px solid #637c88;border-radius:50%;object-fit:cover}.party-v33-member.active>img{border-color:#f1cf8a}.party-v33-member.fallen{opacity:.4}.party-v33-member>span{display:block;font-size:17px;white-space:nowrap;line-height:24px}.party-v33-life{height:7px;width:74px;margin:3px auto;border-radius:4px;background:#16313a;border:1px solid #738f82;overflow:hidden}.party-v33-member .combat-ally-target{left:0;top:-3px;width:82px;height:110px;border:2px solid #b8e4d2;border-radius:13px}
.actor-v33-skills{position:absolute;right:25px;top:22px;display:flex;gap:24px;align-items:start}.actor-v33-skill{width:130px;text-align:center}.actor-v33-skills .combat-skill{width:116px;height:116px;margin:0 auto;display:block;touch-action:manipulation}.actor-v33-skill>span{display:block;font-size:21px;color:#f1dfba;line-height:24px;margin-top:13px}.actor-v33-skills .combat-skill.armed .skill-reserved{top:44px;left:26px;right:26px}.actor-v33-skills .skill-cooldown{font-size:29px}.combat-skill.basic-selected{outline:2px solid #c5b487;outline-offset:2px}
#manual-skill-tooltip{left:auto;right:25px;top:230px;bottom:auto;width:520px;padding:16px 18px;font-size:21px;line-height:1.35}
#manual-skill-tooltip strong{font-size:25px}#manual-skill-tooltip span{font-size:18px}
/* v34 clarity pass: no overlapping legacy caption, stable true boss plan. */
#battle-log[hidden]{display:none!important}
#boss-warning{position:absolute;left:475px;right:255px;top:96px;z-index:8;pointer-events:none}
#boss-warning .boss-warning{position:static;transform:none;width:auto;margin:0;padding:8px 16px;border:1px solid #dba17c;border-radius:10px;background:#322734f0;color:#ffe3c2;text-align:center;font:20px/1.3 ArcanaJua;animation:none;box-shadow:none}
#boss-warning strong{display:block;font-size:24px;font-weight:400}#boss-warning span{display:block;font-size:19px;margin-top:2px}
#game:has(#boss-warning:not(:empty)) #manual-command{top:193px}
#game:has(#boss-warning:not(:empty)) #manual-skill-tooltip{top:282px}
.field-status-icon small{min-width:19px;height:20px;line-height:19px;right:-5px;bottom:-6px;font-size:16px;border:1px solid #9ba4ae;text-align:center}
.field-status-icon:hover,.field-status-icon:focus-visible{border-color:#fff0c9;outline:2px solid #d7c295;outline-offset:2px}
.manual-target:hover,.manual-target:focus-visible{background:linear-gradient(0deg,#ffe6a110,transparent 60%);outline:2px solid #ffe0a055;outline-offset:-2px}.manual-target.ally:hover{background:linear-gradient(0deg,#b9f1d718,transparent 60%)}
@media(prefers-reduced-motion:reduce){.actor-v33-panel,.actor-v33-skills{animation:none!important;transition:none!important}}
/* Keep explanations outside the boss's face and ally heads; long text remains accessible. */
#manual-skill-tooltip,#game:has(#boss-warning:not(:empty)) #manual-skill-tooltip{left:28px;right:auto;top:140px;width:390px;max-height:230px;overflow:auto;pointer-events:auto;touch-action:pan-y;font-size:20px;line-height:1.3}
#manual-skill-tooltip strong{font-size:24px}#manual-skill-tooltip span{font-size:18px}

/* A paused/background battle must also stop HUD CSS paint animations. */
#battle-hud[data-render-paused="true"] *{animation-play-state:paused!important}
