/* INTERFACE-099. Text only: keep artwork, sprite scales and hotspot geometry intact.
   Load after every existing game/teaching stylesheet. Small labels 14, body 15,
   actions 16, section titles 18. Scoped overrides defeat earlier compact !important rules. */
body { --readable-paper:#eee2c5; --readable-muted:#d0c9ae; }
body :is(.experience-drawer,.tutorial-dialog,#teaching-combat-guide) {color:var(--readable-paper);font-size:16px;line-height:1.7}
body :is(.experience-drawer,.tutorial-dialog,#teaching-combat-guide) :is(p,li,.hint,.item-description) {font-size:15px!important;line-height:1.7!important;color:var(--readable-muted)}
body :is(.experience-drawer,.tutorial-dialog,#teaching-combat-guide) :is(button,select,summary) {font-size:15px!important;line-height:1.5!important}
body :is(.experience-drawer,.tutorial-dialog,#teaching-combat-guide) :is(small,.item-meta,label) {font-size:14px!important;line-height:1.55!important}
body #field-guide#field-guide {font-size:16px;line-height:1.65;color:var(--readable-paper)}
body #field-guide#field-guide :is(p,li,.hint,.item-description,.market-purchase-actions) {font-size:15px!important;line-height:1.65!important;color:var(--readable-muted)}
body #field-guide#field-guide :is(button,select,summary,.item-card h4) {font-size:16px!important;line-height:1.45!important}
body #field-guide#field-guide :is(small,.item-meta,label) {font-size:14px!important;line-height:1.55!important}
body.experience-live :is(.hero-header button,.hero-header .button-link,.session-bar,.session-state,.session-bar button,#connection-status) {font-size:14px!important;line-height:1.4!important}
body.experience-live #player-stats .player-stat>strong {font-size:15px!important;line-height:1.4!important;color:var(--readable-paper)}
body.experience-live #player-stats .player-stat>.stat-core {font-size:15px!important;line-height:1.45!important;color:var(--readable-paper)}
body.experience-live .player-extended {font-size:14px!important;line-height:1.55!important;color:var(--readable-muted)}
body.experience-live :is(.route-guide,.map-legend,#event-message,.route-guide button,#exploration-controls button,#end-exploration-button,#scout-button) {font-size:14px!important;line-height:1.45!important;color:var(--readable-paper)}
body.experience-live :is(.event-label,.cell .player-label) {font-size:14px!important;line-height:1.4!important}
body.experience-live #event-scene#event-scene :is(.event-decision-heading,.station-service-title,.convoy-observation h3) {font-size:18px!important;line-height:1.45!important;color:var(--readable-paper)}
body.experience-live #event-scene#event-scene :is(.event-choice-effects,.event-decision-hint,.event-decision-disabled,.station-context,.station-live-status,.station-service-card>p,.convoy-observation>p,.event-scene-status) {font-size:15px!important;line-height:1.55!important;color:var(--readable-muted)}
body.experience-live #event-scene#event-scene :is(.event-method,.event-object-nav,.station-method,.station-service-nav,.event-original-confirm button,.station-original-actions button,.convoy-observation-confirm button,.event-interaction-utilities button,.station-utilities button) {font-size:15px!important;line-height:1.45!important}
body.experience-live #event-scene#event-scene :is(.event-original-confirm>button,.station-original-actions>button,.convoy-observation-confirm>button) {font-size:16px!important;min-height:42px!important}
body.experience-live #event-scene#event-scene :is(.event-original-confirm,.station-original-actions) button small {font-size:14px!important;line-height:1.45!important;color:var(--readable-muted)}
body.experience-live #event-scene#event-scene :is(.station-method strong,.event-method strong) {font-size:15px!important;line-height:1.45!important}
body.experience-live #event-scene#event-scene :is(.station-method small,.event-method small) {font-size:14px!important;line-height:1.45!important;color:var(--readable-muted)}
body.experience-live #event-scene#event-scene .station-method .station-offer-name {font-size:15px!important;line-height:1.45!important}
body.experience-live #event-scene#event-scene .station-method :is(.station-offer-price,.station-offer-sold) {font-size:14px!important;line-height:1.45!important;color:var(--readable-muted)}
body.experience-live #event-scene#event-scene :is(.story-target-plan summary,.story-target-options strong,#event-story-details summary,.event-story-body,.event-receipt) {font-size:15px!important;line-height:1.5!important}
body.experience-live #event-scene#event-scene .story-target-options small {font-size:14px!important;line-height:1.45!important}
body.experience-live #event-scene#event-scene :is(.event-original-confirm>button strong,.station-original-actions button strong) {font-size:16px!important;line-height:1.45!important}
body.experience-live #event-scene#event-scene :is(.event-interaction-actor,.station-actor,.story-target-plan>p) {font-size:14px!important;line-height:1.45!important;color:var(--readable-muted)}
body.experience-live #event-scene#event-scene :is(.item-description,.item-meta) {font-size:14px!important;line-height:1.5!important;color:var(--readable-muted)}
body.experience-live #event-result-content :is(.result-outcome,.result-gains,.result-ledger,p) {font-size:15px!important;line-height:1.65!important}
body.experience-live :is(#event-result-panel>.hint,#event-result-panel button) {font-size:15px!important;line-height:1.5!important}
body.experience-live #event-scene#event-scene.combat-scene :is(.battle-turn-banner,.fighter-vitals,.vital-pair,.enemy-hud,.enemy-intent,.fighter-label,.enemy-label) {font-size:14px!important;line-height:1.4!important;color:var(--readable-paper);text-shadow:0 1px 3px #000}
body.experience-live #event-scene#event-scene.combat-scene .vital-health b {font-size:18px!important}
body.experience-live #event-scene#event-scene.combat-scene :is(.vital-health small,.vital-pair b,.vital-pair small,#combat-round,.battle-combatant figcaption,.battle-enemy>span) {font-size:14px!important;line-height:1.4!important}
body.experience-live #event-scene#event-scene.combat-scene .enemy-intent {color:#f1cf9e!important}
body.experience-live #event-scene#event-scene.combat-scene .effect-chip {font-size:13px!important;line-height:1.35!important}
body.experience-live #event-scene#event-scene.combat-scene .effect-chip small {font-size:12px!important;line-height:1.3!important}
body.experience-live #event-scene#event-scene.combat-scene :is(.combat-actions>button,#path-combat-actions>button,#experience-echo-button) {font-size:16px!important;line-height:1.4!important;letter-spacing:0!important}
body.experience-live #event-scene#event-scene.combat-scene #path-combat-actions>button strong {font-size:16px!important;line-height:1.4!important}
body.experience-live #event-scene#event-scene.combat-scene #path-combat-actions>button small {font-size:14px!important;line-height:1.45!important;color:var(--readable-muted)}
body.experience-live #event-scene#event-scene.combat-scene :is(.combat-tools,#combat-utility,#combat-utility button,#echo-status,#echo-status>p,#echo-status>h4) {font-size:14px!important;line-height:1.45!important;color:var(--readable-muted)}
body.experience-live #loot-workspace :is(.item-description,.item-meta,.hint,#pending-loot-message) {font-size:15px!important;line-height:1.6!important;color:var(--readable-muted)}
body.experience-live #loot-workspace :is(button,.item-card h4,.item-card strong) {font-size:16px!important;line-height:1.45!important}
body.experience-live :is(#boss-preparation,#floor-progress,.ai-observation) :is(p,.hint,.preparation-warning,.preparation-party span,small,label,.preparation-swap) {font-size:14px!important;line-height:1.5!important;color:var(--readable-muted)}
body.experience-live :is(#boss-preparation,#floor-progress,.ai-observation) :is(button,select,summary,h3) {font-size:15px!important;line-height:1.45!important}
body.experience-live #event-team-dock #team-signals {font-size:14px!important;line-height:1.4!important}
/* Label only; never change transparent hotspot text or its circle geometry. */
#event-scene#event-scene.hotspots-098-active :is(.event-object-hotspot,.station-hotspot,.convoy-hotspot)::after {font-size:14px;line-height:1.45;color:var(--readable-paper)}
body.teaching-097 :is(#teaching-strip p,#teaching-damage-guide,#teaching-intent-coach,#teaching-intent-ack,.event-object-nav,.event-choice-effects,.event-decision-hint) {font-size:15px!important;line-height:1.5!important}
body.teaching-097 :is(.teaching-eyebrow,#teaching-combat-guide small) {font-size:14px!important}
body.teaching-097 .event-decision-heading {font-size:18px!important;line-height:1.45!important}
body.training-page :is(.training-notice,.lesson-nav button,.panel-kicker,.eyebrow,.lesson-details,.ai-controls,#lesson-progress,.scene-watermark,.enemy-state,.scene-poison) {font-size:14px!important;line-height:1.5!important}
body.training-page :is(.lesson-story,.training-feedback,.training-stats,.training-demo .result-card,.lesson-details p,.scene-node,.scene-gate small) {font-size:15px!important;line-height:1.6!important;color:var(--readable-muted)}
body.training-page :is(.training-controls button,.training-demo button,.ai-controls select,.button-link) {font-size:16px!important;line-height:1.45!important}
body.training-page .training-copy {overflow:auto}
@media(min-width:1100px) and (min-height:650px) {
 body.experience-live #event-scene#event-scene.combat-scene #combat-panel {padding-top:4px!important;padding-bottom:4px!important}
 body.experience-live #event-scene#event-scene.combat-scene .combat-tools>summary {padding-top:3px;padding-bottom:3px}
 body.interface-live #event-scene :is(.event-methods,.station-methods) {max-height:110px!important}
 body.interface-live #event-scene.combat-scene #combat-panel {max-height:180px}
 body.interface-live #event-scene .story-target-options>button {padding:7px 8px!important}
 body.interface-live.experience-live #event-scene#event-scene .event-decision-card:has(.story-target-plan) {grid-template-columns:minmax(0,1fr) minmax(0,48%)!important;gap:4px 16px!important}
}
@media(max-width:1099px),(max-height:649px) {
 body.experience-live #player-stats .player-stat {min-height:74px}
 body.experience-live .header-actions {flex-wrap:wrap!important}
 body.experience-live #event-scene#event-scene .story-target-options {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
}

