/* Compact combat overlay and event shop. No world canvas geometry changes. */
.tcq-boss-panel{position:absolute;z-index:31;bottom:90px;left:10px;width:min(232px,calc(100% - 24px));box-sizing:border-box;padding:7px 8px;background:#fff2d4f2;color:#483122;border:2px solid #ad885b;box-shadow:0 4px 0 #6e543d5c;font-size:12px;pointer-events:auto}
.tcq-boss-panel[hidden]{display:none!important}
.tcq-boss-summary{display:flex;justify-content:space-between;gap:8px;align-items:center}.tcq-boss-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcq-boss-summary span{flex-shrink:0;font-size:11px}
.tcq-boss-meter{background:#b96a5e;height:6px;margin:5px 0}.tcq-boss-meter i{display:block;height:100%;background:#7da44e;transition:width .25s}
.tcq-boss-controls{display:flex;gap:6px}.tcq-boss-controls button{flex:1;min-height:37px;background:#e8dfc0;color:#4a3328;border:1px solid #9c8154;font:inherit;font-weight:700}.tcq-boss-controls button:last-child{background:#e7a477}.tcq-boss-controls button:disabled{opacity:.48}
.tcq-boss-panel small{display:block;margin-top:3px;font-size:9px;line-height:1.3;color:#5d483b;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tcq-boss-panel[data-boss="bossct"]{border-color:#8ca5c2;background:#eff5f7ef}
.tcq-boss-panel[data-boss="bossct"] .tcq-boss-meter i{background:#9aafe7}
.tcq-boss-player{display:flex;justify-content:space-between;font-size:10px;gap:4px;color:#725c4a;margin:3px 0}
.tcq-boss-controls button{min-height:28px!important}
.tcq-event-content{padding:10px 12px;overflow:auto;max-height:68dvh;color:#533e2a}.tcq-event-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #dec796;background:#fff5de;padding:10px}.tcq-event-summary small{display:block;color:#727042}.tcq-event-summary strong{font-size:17px}.tcq-event-summary p{margin:5px 0 0;font-size:12px}
.tcq-event-points{flex:none;min-width:78px;text-align:center;border-radius:9px;background:#ecdeaa;padding:8px}.tcq-event-points b{display:block;font-size:22px;color:#705b31}.tcq-event-points span{font-size:10px}
.tcq-event-title{display:flex;justify-content:space-between;margin:12px 0 8px;font-weight:800;font-size:14px}.tcq-event-title small{font-weight:400}
.tcq-event-rewards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:8px}
.tcq-event-reward{display:grid;grid-template-columns:62px minmax(0,1fr);grid-template-rows:auto auto;gap:6px;padding:8px;background:#fff9e8;border:1px solid #d6bc8d;align-items:center}
.tcq-event-reward canvas{grid-row:1/3;width:62px;height:62px;object-fit:contain;image-rendering:pixelated;background:#f8eed8}
.tcq-event-reward b,.tcq-event-reward small{display:block}.tcq-event-reward b{font-size:12px}.tcq-event-reward small{font-size:10px;line-height:1.4;color:#84674d}
.tcq-event-reward button{grid-column:2;min-height:34px;background:#b0d3a3;color:#2d4b34;border:1px solid #6e9763;font:inherit;font-weight:bold}.tcq-event-reward button:disabled{opacity:.42}
.tcq-event-footnote,.tcq-event-empty{font-size:12px;line-height:1.5;color:#7b5a40}
@media(max-width:600px){.tcq-boss-panel{bottom:104px;left:8px;width:min(205px,calc(100% - 18px));padding:6px 7px;font-size:11px}.tcq-boss-controls button{min-height:34px!important}.tcq-boss-summary span{font-size:10px}.tcq-event-content{max-height:72dvh;padding:8px}.tcq-event-rewards{grid-template-columns:1fr}}

/* v0.10.7.51: separate VFX compositing stage: never steals taps, stays above decorations. */
.canvas-wrap .tcq-boss-fx-stage{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:28!important;pointer-events:none!important;display:block!important;background:transparent!important;image-rendering:pixelated;contain:layout paint}
.tcq-boss-hit-feedback{pointer-events:none;position:absolute;bottom:calc(100% + 6px);left:5px;max-width:calc(100% - 10px);padding:5px 9px;color:#fff9db;background:#563d35ed;border:2px solid #e7c48f;font:bold 13px TCQPixel,monospace;white-space:nowrap;opacity:0;transform:translateY(7px);transition:transform .12s ease,opacity .12s ease;box-shadow:0 2px 7px #21160b66;overflow:hidden;text-overflow:ellipsis}
.tcq-boss-hit-feedback[data-kind="bossct"]{border-color:#d5a8fa;background:#3b3859ec}
.tcq-boss-hit-feedback.show{opacity:1;transform:translateY(0)}
@media(max-width:600px){.tcq-boss-hit-feedback{font-size:11px;bottom:calc(100% + 4px);padding:3px 7px}}

/* v0.10.7.52 — Safari compositing stability, visual-only stage. */
.canvas-wrap .tcq-boss-fx-stage{contain:none!important;transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);}

/* v0.10.7.56: always-visible player HP and manual server-verified healing */
.tcq-player-hp-meter{width:100%;height:7px;background:#7f393d;margin-top:6px;border-radius:5px;overflow:hidden}
.tcq-player-hp-meter i{display:block;height:100%;background:#48b67c;transition:width .25s ease}
.tcq-player-hp-meter i.low{background:#ef7758}
.tcq-boss-panel{width:min(268px,calc(100% - 20px))}
.tcq-boss-controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px}
.tcq-boss-controls button{padding:4px 2px;min-width:0;font-size:10px;white-space:nowrap}
.tcq-boss-controls #tcqBossHeal{background:#c9e7bf;border-color:#769f70}
@media(max-width:600px){.tcq-boss-panel{width:min(260px,calc(100% - 16px))}.tcq-boss-controls button{font-size:10px}}

/* v0.10.7.57: The global `canvas` selector in style.css adds a #536948
   border and max-height:72vh. On the full-viewport Boss FX canvas this
   produced a dark horizontal line at 72vh and a side line over the map.
   Do NOT alter world layout/collision; isolate the transparent FX stage. */
.canvas-wrap > canvas.tcq-boss-fx-stage {
  max-height: none !important;
  max-width: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
}

.tcq-event-history{max-height:115px;overflow:auto;font-size:10px;background:#fff5de;border:1px solid #e9d7ab;padding:5px 8px}.tcq-event-history p{margin:5px 0}

/* Boss Studio GIF: independent DOM animation over Canvas; never captures input. */
.canvas-wrap > img.tcq-boss-gif{position:absolute!important;z-index:27!important;pointer-events:none!important;display:block;transform:translate(-50%,-100%);image-rendering:pixelated!important;object-fit:fill;border:0!important;max-width:none!important;max-height:none!important;background:transparent!important;user-select:none!important}
.canvas-wrap > img.tcq-boss-gif[hidden]{display:none!important}

/* v0.10.7.64: compact, non-blocking Boss AoE warning for portrait screens. */
.tcq-boss-panel #tcqBossHazardAlert{background:#9e4935;color:#fff6d6;border:1px solid #e9b976;padding:3px 5px;font-size:11px;font-weight:800;white-space:normal;text-align:center;animation:tcqBossWarnPulse .75s ease-in-out infinite alternate}
.tcq-boss-panel #tcqBossHazardAlert[hidden]{display:none!important}
@keyframes tcqBossWarnPulse{to{background:#d3693f}}
@media(prefers-reduced-motion:reduce){.tcq-boss-panel #tcqBossHazardAlert{animation:none}}
