/* VARDENYX — landscape field overlay and victory rewards. */
.app-shell.field-active,.app-shell.field-active .main-shell{
  width:100%;height:100dvh;min-height:0;overflow:hidden
}
.app-shell.field-active .content{
  width:100%;max-width:none!important;height:100%;min-height:0;overflow:hidden;
  padding:0!important;margin:0!important
}
.app-shell.field-active .wilderness-location{
  position:relative;width:100%;height:100%;min-height:0;margin:0;overflow:hidden
}
.app-shell.field-active .wilderness-panorama{
  position:absolute;inset:0;width:100%;height:100%!important;
  border:0;border-radius:0;box-shadow:none;overflow:hidden;background:#50686c
}
.app-shell.field-active .wilderness-scene-art{object-fit:cover;object-position:center}
.field-overlay-heading,.field-overlay-vitals{position:absolute;z-index:12;left:clamp(12px,2vw,32px);pointer-events:none}
.field-overlay-heading{
  top:clamp(8px,2.3vh,18px);max-width:calc(100% - 105px);
  color:#f9fbfb;text-shadow:0 2px 8px #17232edb,0 1px 3px #17232f
}
.field-overlay-heading .location-crumb{color:#f0f5f4;letter-spacing:1.6px;font-size:clamp(7px,.65vw,10px)}
.field-overlay-heading h1{
  font:700 clamp(21px,3.1vw,41px) Cinzel,Georgia,serif;
  margin:3px 0 2px;color:#fff;text-shadow:0 3px 10px #111c25ed
}
.field-overlay-heading small{color:#f1f5f4;font-size:clamp(9px,1vw,13px);font-weight:650}
.field-overlay-vitals{top:clamp(83px,20vh,120px);width:min(60%,660px);min-width:290px;max-width:calc(100% - 95px);pointer-events:none}
.field-overlay-vitals .adventure-hud{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;
  margin:0;padding:8px 11px;gap:8px;
  background:#eef2f2df;backdrop-filter:blur(7px);
  box-shadow:0 5px 19px #10232a50;
  border:1px solid #f3f7f0ad;border-radius:12px
}
.field-overlay-vitals .quest-hint{display:none!important}
.field-overlay-vitals .adventure-resource>span{font-size:10px;color:#2f444b}
.field-overlay-vitals .adventure-resource-track{height:8px}
.field-back-button.world-back-button{
  position:absolute;z-index:18;bottom:clamp(12px,3vh,25px);right:clamp(12px,2vw,26px);
  top:auto;left:auto;min-height:42px;
  padding:10px 20px;background:#26343de8;border:1px solid #d1dbdf99;
  border-radius:11px;color:#fff;box-shadow:0 5px 15px #1322287d;
  backdrop-filter:blur(6px);transition:right .27s ease,background .17s ease
}
.field-back-button:hover{background:#4a626de8}
.field-presence-trigger{
 position:absolute;z-index:25;top:50%;right:12px;transform:translateY(-50%);
 display:flex;align-items:center;justify-content:center;gap:7px;
 min-height:46px;padding:8px 12px;background:#273640ed;color:#f3f7f8;
 border:1px solid #dce8eb98;border-radius:10px;
 font:800 12px Inter,system-ui,sans-serif;letter-spacing:.2px;
 box-shadow:0 5px 16px #101b25b9;backdrop-filter:blur(8px);
 transition:right .26s ease,background .17s ease
}
.field-presence-trigger:hover{background:#415863f3}
.field-presence-panel{
 position:absolute;right:0;top:0;bottom:0;z-index:23;
 width:clamp(195px,25%,390px);display:flex;flex-direction:column;
 background:#ecf0f0ee;backdrop-filter:blur(14px);color:#25333a;
 border-left:1px solid #ebf1f1b5;box-shadow:-6px 0 26px #0d1d2860;
 transform:translateX(102%);visibility:hidden;pointer-events:none;
 transition:transform .27s ease,visibility .27s ease;
 overflow:hidden
}
.field-presence-panel.is-open{transform:translateX(0);visibility:visible;pointer-events:auto}
.wilderness-location.presence-open .field-presence-trigger{right:calc(clamp(195px,25%,390px) + 10px)}
.wilderness-location.presence-open .field-back-button{right:calc(clamp(195px,25%,390px) + 13px)}
.field-presence-head{padding:21px 14px 9px;border-bottom:1px solid #bbc8cb;font:700 clamp(13px,1.2vw,17px) Cinzel,Georgia,serif}
.field-presence-head strong{overflow-wrap:anywhere}
.field-presence-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:9px 9px 6px}
.field-presence-tabs button{
 background:#d2dadd;color:#384c56;border:1px solid #b0bec3;border-radius:8px;
 padding:9px 5px;font-size:11px;font-weight:800;min-height:36px
}
.field-presence-tabs button.active{background:#293a43;color:#fff;border-color:#293a43}
.field-presence-body{padding:8px 10px;min-height:0;overflow-y:auto;overscroll-behavior:contain;flex:1}
.field-presence-mobs{list-style:none;display:grid;gap:7px;margin:0;padding:0}
.field-presence-mobs li{margin:0;padding:0}
.field-presence-mobs button{
 display:flex;align-items:center;width:100%;gap:7px;padding:6px;
 border:1px solid #b8c5c9;border-radius:9px;background:#f7f9f9;
 color:#283941;text-align:left;min-height:51px
}
.field-presence-mobs button:hover:not(:disabled){background:#dbe6e7}
.field-presence-mobs button:disabled{opacity:.4}
.field-presence-mobs img{width:36px;height:36px;object-fit:contain;flex-shrink:0}
.field-presence-mobs span{display:flex;flex-direction:column;gap:3px;min-width:0}
.field-presence-mobs strong{font-size:11px;line-height:1.2;overflow-wrap:anywhere}
.field-presence-mobs small{font-size:10px;color:#5c7079}
.field-presence-player{display:flex;align-items:center;gap:10px;padding:12px 7px;border:1px solid #c0cdd0;border-radius:10px}
.field-presence-player>span{font-size:28px}
.field-presence-player div{display:flex;flex-direction:column;gap:4px;min-width:0}
.field-presence-player strong{font-size:12px;overflow-wrap:anywhere}
.field-presence-player small,.field-presence-note{font-size:11px;color:#526570;line-height:1.5}
.field-presence-note{padding:7px 4px}
.victory-rewards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;width:100%;margin:2px 0 4px}
.victory-reward{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  padding:9px 6px;border-radius:10px;background:linear-gradient(#f7faf9,#dce4e6);
  border:1px solid #b8c6cb;min-height:65px;min-width:0}
.victory-reward>span{font-size:18px;color:#536875}
.victory-reward strong{font-size:clamp(10px,1.13vw,15px);line-height:1.25;text-align:center;overflow-wrap:anywhere;color:#233740}
.victory-reward small{font-size:9px;font-weight:700;letter-spacing:.3px;color:#627881}
.victory-reward.loot>span{font-size:20px}
.victory-level-up{grid-column:1/-1;font-size:11px;font-weight:700;margin:0;color:#8c6321}
.battle-round-toolbar[hidden],.battle-round-toolbar .battle-timer[hidden]{display:none!important}
.battle-finished{padding:9px 2px;gap:8px}
.battle-finished>.button{width:100%;min-height:43px}
html.immersive-mode.force-landscape .app-shell.field-active,
html.immersive-mode.force-landscape .app-shell.field-active .main-shell{
 height:var(--immersive-width,100vw)!important;min-height:0!important
}
html.immersive-mode.force-landscape .app-shell.field-active .content{height:100%!important}
@media(max-width:900px){
 .field-overlay-heading{top:8px;left:12px}
 .field-overlay-heading h1{font-size:clamp(18px,3.1vw,29px)}
 .field-overlay-vitals{top:72px;left:12px;width:min(56%,525px);min-width:225px}
 .field-overlay-vitals .adventure-hud{padding:6px 7px;gap:5px}
 .field-overlay-vitals .adventure-resource>span{font-size:9px}
 .field-presence-head{padding:12px 9px 7px}
 .field-presence-body{padding:5px}
 .field-presence-trigger{padding:8px;font-size:11px}
 .field-back-button.world-back-button{padding:8px 10px;font-size:11px}
 .victory-reward{padding:6px 4px;min-height:52px}
}
@media(max-height:470px) and (orientation:landscape){
 .field-overlay-heading h1{font-size:23px}
 .field-overlay-heading small{font-size:9px}
 .field-overlay-vitals{top:75px;width:51%;min-width:220px}
 .field-overlay-vitals .adventure-resource-track{height:6px}
 .field-presence-head{padding-top:10px}
 .field-presence-tabs button{min-height:31px;padding:4px;font-size:10px}
 .field-presence-mobs button{min-height:43px;padding:3px}
 .field-presence-mobs img{width:30px;height:30px}
 .field-presence-mobs strong,.field-presence-mobs small{font-size:9px}
 .victory-reward{min-height:46px;gap:2px}
 .victory-reward>span{font-size:15px}
 .victory-reward small{font-size:8px}
}
@media(max-width:550px){
 .field-presence-trigger span{display:none}
 .field-overlay-heading{max-width:calc(100% - 70px)}
 .field-overlay-vitals{min-width:190px;max-width:60%}
 .field-presence-panel{width:clamp(170px,35%,220px)}
 .wilderness-location.presence-open .field-presence-trigger{right:calc(clamp(170px,35%,220px) + 5px)}
 .wilderness-location.presence-open .field-back-button{right:calc(clamp(170px,35%,220px) + 5px)}
}
@media(prefers-reduced-motion:reduce){
 .field-presence-panel,.field-back-button,.field-presence-trigger{transition:none!important}
}
