/* GDI's positive cell height includes internal leading. Measured capture ink:
   Tahoma:12 => 7px capitals / 5px lowercase, reproduced by 10px CSS Tahoma.
   All replicas consume these variables, including controls and nested labels. */
.presentation-page .client-window {
  --replica-font-family:Tahoma,Verdana,Arial,sans-serif;
  --replica-text-size:10px;
  --replica-text-line:12px;
  --replica-text-spacing:.2px;
  --replica-title-size:10.25px;
  --replica-title-line:14px;
  --replica-header-size:10px;
  --replica-header-line:14px;
  --replica-button-size:10px;
  --replica-button-line:12px;
  --replica-small-size:7px;
  --replica-small-line:9px;
}
.presentation-page .client-window[data-replica],
.presentation-page .client-window[data-replica] * {
  font-family:var(--replica-font-family) !important;
  font-size:var(--replica-text-size) !important;
  font-weight:400 !important;
  line-height:var(--replica-text-line) !important;
  letter-spacing:var(--replica-text-spacing) !important;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  font-smooth:never;
  text-rendering:optimizeSpeed;
}
.presentation-page .client-window[data-replica] .replica-titlebar .replica-title-label {
  font-size:var(--replica-title-size) !important;
  line-height:var(--replica-title-line) !important;
  letter-spacing:0 !important;
}
.presentation-page .client-window[data-replica] :is(.client-strip,.native-panel-title,.game-panel-title,.title-panel-heading,.sc-panel > h3,.st-panel > h3,.pet-strip) {
  font-size:var(--replica-header-size) !important;
  line-height:var(--replica-header-line) !important;
}
.presentation-page .client-window[data-replica] :is(button,input,select) {
  font-size:var(--replica-button-size) !important;
  line-height:var(--replica-button-line) !important;
}
.presentation-page .client-window[data-replica] :is(button,input,select),
.presentation-page .client-window[data-replica] :is(button,input,select) * { letter-spacing:0 !important; }
/* These native strips/cells center text in a fixed height rather than padding. */
.presentation-page #pets .pet-window :is(.pet-strip,.pet-strip em) { line-height:21px !important; }
.presentation-page #pets .pet-window .pet-stat > div { line-height:14px !important; }
/* No Tahoma:9 text is used by the current replicas. Keep an explicit opt-in
   token for that source font; <small> alone is a normal game label. */
.presentation-page .client-window[data-replica] [data-game-font=small] {
  font-size:var(--replica-small-size) !important;
  line-height:var(--replica-small-line) !important;
}
/* Missions + Options must both fit the native 408x293 board. */
.presentation-page .client-window[data-replica=bounty] > .native-page { bottom:9px; }
.presentation-page .client-window[data-replica=bounty] .native-bounty-columns { height:176px; margin-bottom:5px; }
.presentation-page .client-window[data-replica=bounty] .native-bounty-tasks { gap:5px; padding-top:3px; }
.presentation-page .client-window[data-replica=bounty] .native-bounty-tasks button { height:24px; }
.presentation-page .client-window[data-replica=bounty] .native-bounty-options { height:29px; padding:5px 6px; align-items:center; }
.presentation-page .client-window[data-replica=bounty] .native-bounty-options label { flex:1; min-width:0; height:25px; padding:0 6px; border:1px solid #3a3937; background:#0d0b08; }
/* Anchor the 2x native item sprite to the map itself, above the caption. */
.presentation-page #bounty .bounty-map-reward { position:relative; width:min(100%,260px); margin:0 auto; aspect-ratio:1; }
.presentation-page #bounty .bounty-reward .bounty-map { width:100%; height:100%; aspect-ratio:1; object-fit:contain; padding:4px; }
.presentation-page #bounty .bounty-reward .reward-chest { position:absolute; left:auto; right:6px; bottom:6px; width:64px; height:64px; max-height:none; padding:0; background:url('assets/ui/game/public_slot_base.png') center/64px 64px no-repeat; image-rendering:pixelated; object-fit:contain; filter:drop-shadow(1px 2px 2px #000b); z-index:2; }
.presentation-page #bounty .bounty-reward figcaption { padding:10px 0 0; }
