.party-dock{display:flex;align-items:center;gap:16px;height:86px;border-bottom:1px solid #6a78965c;padding:8px 2px}.party-dock #rpgHud{display:flex;gap:8px;flex:1}.member-card{display:flex;align-items:center;text-align:left;gap:5px;flex:1;max-width:210px;min-width:0;padding:3px 8px 4px 0;background:#192039;border-color:#65749566;min-height:65px}.member-sprite{display:block;flex:0 0 48px;height:58px;background-size:400% 400%;background-position:33.333% 0;image-rendering:pixelated}.member-card>span{flex:1;min-width:0}.member-card strong{display:block;font-size:13px;white-space:nowrap;color:#ebd5a9}.member-card em{font-size:10px;color:#99abc7;font-style:normal;font-weight:400;margin-left:3px}.member-card small{display:block;font-size:11px;margin-top:3px;white-space:nowrap;font-variant-numeric:tabular-nums}.mp{color:#9bbae8!important}.rpg-meter{display:block;height:4px;background:#443954;margin-top:3px;overflow:hidden}.rpg-meter i{display:block;height:100%;background:#91c8a7;transition:width .2s}.journey-record{display:grid;gap:5px;min-width:164px;font-size:11px;color:#bbc4d7;text-align:right}.journey-record button{font-size:12px;min-height:30px;padding:5px 10px}.journey-record kbd{margin-left:14px}#world{height:calc(100dvh - 272px);min-height:320px}footer{height:55px}footer .status,#partyStrip{display:none!important}footer nav{margin-left:0}#interact{margin-left:auto}#banter{position:absolute;left:50%;bottom:53px;transform:translateX(-50%);max-width:62%;width:max-content;pointer-events:none;background:#151e37ef;color:#e5d9c3;border:1px solid #9d9677;padding:10px 16px;font-size:14px;line-height:1.8;z-index:3}#banter[hidden]{display:none}.character-sheet{display:flex;gap:18px;align-items:center;margin:16px 0;padding:12px;border:1px solid #65799a}.character-sheet>i{width:105px;flex:0 0 105px;height:130px;image-rendering:pixelated;background-size:400% 400%;background-position:33.333% 0}.character-sheet h3{font-size:18px;color:#ecd0a2;margin:5px 0}.character-sheet p{font-size:14px!important;margin:6px 0!important}.quest-record{border-left:3px solid #bdab7c;background:#141c31;padding:14px 16px;margin:12px 0}.quest-record strong{font-size:16px;color:#e9d29e}.quest-record p{font-size:14px!important;margin:5px 0!important}.quest-record small{color:#9bafc7;font-size:12px}.down{opacity:.45;filter:grayscale(.8)}
.tactical-modal{width:min(910px,96vw);padding:15px 21px;max-height:94dvh}.tactical-modal .modal-top{margin-bottom:3px}.tactical-modal #modalBody h2{font-size:21px;letter-spacing:1px;margin:0 0 9px}.turn-order{display:flex;gap:5px;overflow-x:auto;min-height:31px;padding:1px 0 8px}.turn-order span{white-space:nowrap;padding:3px 9px;border:1px solid #63789a;font-size:11px;background:#202e46}.turn-order .enemy{border-color:#957087;background:#38273f}.turn-order .current{background:#e4c88d;color:#232640;border-color:#eeddb9;font-weight:700}.tactical-field{background:radial-gradient(ellipse at 50% 20%,#303959,#111c32 78%);border:1px solid #6e7b99;padding:9px 10px 0;position:relative;overflow:hidden}.tactical-field:before{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,#080d1919 3px,#080d1919 4px)}.foe-row{display:flex;justify-content:center;gap:18px;position:relative}.foe-card{width:230px;min-width:0;max-width:43%;border:1px solid transparent;background:transparent!important;text-align:center;padding:0 10px 9px;min-height:0}.foe-card:disabled{opacity:1;cursor:default}.foe-card:not(:disabled){border-color:#dcbf7f;cursor:pointer}.foe-card:not(:disabled):hover{background:#4a466057!important}.foe-card.defeated{opacity:.3;filter:grayscale(1)}.foe-image{display:block;width:108px;height:108px;margin:auto;background-image:url(assets/encounters.png);background-size:200% 200%;image-rendering:pixelated}.foe-card strong{display:block;font-size:14px;color:#eaded1}.foe-card small{display:block;font-size:11px;margin-top:4px;color:#bcc4d6}.foe-card .rpg-meter{height:5px;background:#4f354d;margin:6px 0}.foe-card .rpg-meter i{background:#c799b4}.foe-card .foe-intent{color:#f0ca91;font-size:12px;min-height:1.4em}.ally-row{display:flex;justify-content:center;gap:18px;padding:7px 0 4px;border-top:1px solid #758daa40;position:relative}.battle-ally{position:relative;width:146px;min-width:0;text-align:center;padding:0 10px 6px;border-bottom:3px solid transparent;transition:background .2s}.battle-ally.active{border-color:#edcd8f;background:linear-gradient(0deg,#a9976359,transparent 80%)}.battle-ally>i{display:block;width:61px;height:61px;margin:auto;background-size:400% 400%;background-position:33.333% 0;image-rendering:pixelated}.battle-ally strong{font-size:12px;display:block;color:#e6d4ad;margin-top:-3px}.battle-ally small{font-size:11px;display:block;margin:3px 0 0}.battle-message{min-height:47px;background:#121b31;border-left:3px solid #b59f72;margin:8px 0;padding:8px 12px;font-size:14px;line-height:1.6;color:#e5ddc9}.battle-command-title{font-size:13px;color:#f3d49c;display:flex;justify-content:space-between;margin:8px 0 6px}.battle-command-title span{color:#94c1d3}.tactical-modal .actions{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:6px}.tactical-modal .actions button{font-size:13px;min-height:37px;padding:7px 9px}.tactical-modal .actions button:disabled{color:#95a0b8}.victory-word{font-size:33px;letter-spacing:9px;text-align:center;padding:20px 0;color:#f5d49c}.hit{animation:rpg-hit .35s steps(3)}@keyframes rpg-hit{0%,60%{transform:translateX(-4px);filter:brightness(1.9)}30%,90%{transform:translateX(4px);filter:brightness(.8)}}
@media(max-width:900px){.journey-record{display:none}.member-card{max-width:none}.member-card em{display:none}.party-dock{gap:0}.tactical-modal{padding:13px 16px}.ally-row{gap:5px}.foe-row{gap:5px}}
@media(max-width:700px){#world{height:calc(100dvh - 264px);min-height:280px}.party-dock{height:72px;padding:5px 0}.party-dock #rpgHud{gap:3px}.member-card{gap:0;padding:2px 4px;min-height:60px}.member-card strong{font-size:11px}.member-card small{font-size:9px}.member-sprite{flex-basis:25px;height:40px}.rpg-meter{height:3px}.member-card .rpg-meter{margin-top:2px}footer{height:72px;gap:4px;padding-top:3px;align-content:center}footer nav{order:0;width:100%;justify-content:space-between;margin:0}nav button{font-size:12px;min-height:31px}nav button span{font-size:14px}#interact{position:fixed;right:14px;bottom:165px;z-index:3;min-height:36px;background:#e5c789ee;max-width:190px;font-size:12px}#touch{bottom:207px;right:14px}#banter{bottom:60px;max-width:85%;font-size:12px;padding:8px 10px}#hint{max-width:175px}.character-sheet{gap:9px;padding:9px}.character-sheet>i{width:69px;flex-basis:69px;height:95px}.character-sheet h3{font-size:16px}.character-sheet p{font-size:12px!important}.tactical-modal{padding:11px 12px;max-height:94dvh}.tactical-modal #modalBody h2{font-size:18px}.turn-order span{font-size:10px;padding:3px 6px}.foe-card{max-width:48%;padding:0 5px 8px}.foe-image{width:86px;height:86px}.foe-card strong{font-size:12px}.foe-card small{font-size:10px}.foe-card .foe-intent{font-size:11px}.battle-ally{padding:0 3px 5px}.battle-ally>i{width:49px;height:52px}.battle-ally strong{font-size:11px}.battle-ally small{font-size:10px}.battle-message{font-size:12px;min-height:45px;padding:7px 9px}.tactical-modal .actions button{font-size:12px;padding:7px 3px;min-height:38px}.battle-command-title{font-size:12px}.foe-row{gap:0}.ally-row{gap:3px}.modal-top .eyebrow{font-size:11px}#modalBody .row{gap:10px}.row>div{min-width:0}.row button{flex-shrink:0}.bottomline{height:23px}}
@media(max-width:390px){.member-sprite{display:none}.member-card{padding:5px}.member-card small{font-size:10px}.tactical-modal .actions button{font-size:11px}}
@media(max-height:600px) and (min-width:701px){#world{height:calc(100dvh - 231px);min-height:190px}.party-dock{height:74px}.tactical-modal{max-height:96dvh}.tactical-modal .modal-top{display:none}.foe-image{width:64px;height:64px}.battle-ally>i{width:43px;height:43px}.battle-message{min-height:35px;padding:5px 10px}.ally-row{padding-top:3px}.tactical-modal .actions button{min-height:32px;padding:4px}.turn-order{min-height:25px}.tactical-field{padding-top:3px}}
@media(prefers-reduced-motion:reduce){.hit{animation:none}.rpg-meter i{transition:none}}

.quest-record button{display:block;margin-top:10px;font-size:12px;min-height:33px;padding:6px 12px}#mainGoalBtn[hidden]{display:none}
