/* Quiet map guidance and persistent system notices. */
.feedback-announcer{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.map-feedback{min-height:28px;width:100%;position:relative;display:flex;align-items:center;justify-content:center;min-width:0;flex-shrink:0}
.map-feedback .field-note{display:flex;margin:0;padding:4px 0;color:#707b63;font-size:10px;min-height:0;line-height:1.6}
#field-note-text.tip-enter{animation:field-tip-enter .45s ease-out}
@keyframes field-tip-enter{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){#field-note-text.tip-enter{animation:none}}
.feedback-host{flex-shrink:0;min-width:0}
.feedback-host:empty{display:none}
.feedback-host.minitool-no-feedback{display:none}
.feedback-host:not(:has(.feedback-notice)){display:none}
.game-sidebar>.feedback-host{display:flex;flex-direction:column;min-height:28px;margin-left:var(--game-gutter);margin-right:var(--game-gutter);margin-inline:var(--game-gutter);max-height:44px;max-height:clamp(44px,calc(100dvh - 408px - var(--safe-area-inset-top,env(safe-area-inset-top,0px)) - var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px))),200px);overflow:hidden}
.game-sidebar .feedback-notices{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:none;grid-auto-rows:max-content}
.game-sidebar .feedback-notices::-webkit-scrollbar{display:none}
.game-screen[data-layout=side] .feedback-host{flex:0 1 auto;min-height:0;max-height:none}
.home-screen>.feedback-host{margin-top:6px;margin-bottom:12px;margin-block:6px 12px}
.feedback-notices{display:grid;--minitool-row-gap:6px;--minitool-column-gap:6px;grid-gap:6px;gap:6px}
.feedback-notice{display:flex;align-items:center;--minitool-row-gap:9px;--minitool-column-gap:9px;grid-gap:9px;gap:9px;padding:9px 10px;margin:8px 0 2px;border:1px solid #bdac90;border-left:3px solid #ad785c;border-radius:4px 8px 5px 6px;background:#f4eadd;color:#76503e;font-size:11px;line-height:1.6}
.feedback-notice .feedback-symbol{width:22px;flex-shrink:0}
.feedback-symbol svg{width:21px;height:21px}
.feedback-notice .feedback-art{width:36px;height:36px;object-fit:contain;flex-shrink:0}
.feedback-copy{min-width:0;flex:1;overflow-wrap:break-word;overflow-wrap:anywhere}
.feedback-copy strong{font-size:11px;font-weight:650}
.feedback-copy p{margin:3px 0 0;font-size:10px;line-height:1.7;color:#677255}
.feedback-notice .paper-button{flex-shrink:0;min-height:44px;padding:6px 9px;font-size:10px;white-space:nowrap;color:inherit;border-color:#baa88b;background:#faf5e9}
.feedback-summary{display:none}
.story-sheet>.feedback-host,.narration-screen>.feedback-host{grid-column:1 / -1;grid-row:3}
.story-sheet.minitool-has-feedback,.narration-screen.minitool-has-feedback{grid-template-rows:auto minmax(60px,1fr) auto auto;overflow:auto}
.story-sheet:has(.feedback-notice),.narration-screen:has(.feedback-notice){grid-template-rows:auto minmax(60px,1fr) auto auto;overflow:auto}
.story-sheet.minitool-has-feedback .story-footer,.narration-screen.minitool-has-feedback .narration-footer{grid-row:4}
.story-sheet:has(.feedback-notice) .story-footer,.narration-screen:has(.feedback-notice) .narration-footer{grid-row:4}
.bag-sheet.minitool-has-feedback{overflow-y:auto}
.bag-sheet:has(.feedback-notice){overflow-y:auto}
.bag-sheet.minitool-has-feedback .bag-content{flex:none;min-height:310px}
.bag-sheet:has(.feedback-notice) .bag-content{flex:none;min-height:310px}
.fly-sheet.minitool-has-feedback{overflow-y:auto}
.fly-sheet:has(.feedback-notice){overflow-y:auto}
.fly-sheet.minitool-has-feedback .compass-body{flex:none;min-height:280px}
.fly-sheet:has(.feedback-notice) .compass-body{flex:none;min-height:280px}
.panel-feedback{flex-shrink:0;min-width:0;font-size:11px;color:#4d6541}
.panel-feedback .feedback-notice{margin-top:6px;margin-bottom:0;margin-block:6px 0}
.feedback-inline-result{margin:6px 0 0;padding:7px 9px;background:#e8edd9;border-radius:3px 6px 3px 4px;line-height:1.6}
.resource-gained{animation:resource-gained .65s ease-out}
.key-group.resource-gained .held-key{animation:resource-gained .65s ease-out}
@keyframes resource-gained{0%,100%{transform:none}35%{transform:translateY(-2px);background-color:#e9ecd8}}
@media(max-width:360px){.feedback-notice{--minitool-row-gap:6px;--minitool-column-gap:6px;grid-gap:6px;gap:6px;padding:7px}.feedback-notice .feedback-symbol{display:none}.feedback-notice .feedback-art{width:28px;height:28px}.feedback-notice .paper-button{padding-left:7px;padding-right:7px;padding-inline:7px}}
@media(max-height:600px){.modal-sheet.minitool-has-feedback{overflow:auto}.modal-sheet:has(.feedback-notice){overflow:auto}.modal-sheet.minitool-has-feedback>.feedback-host{flex-shrink:0}.modal-sheet:has(.feedback-notice)>.feedback-host{flex-shrink:0}}
/* A short map gets one complete, actionable notice; the shared panel holds its details and queue. */
@media(max-height:480px){
  .game-sidebar>#game-feedback-host.minitool-has-feedback{flex:0 0 48px;min-height:48px;max-height:48px}
  .game-sidebar>#game-feedback-host:has(.feedback-notice){flex:0 0 48px;min-height:48px;max-height:48px}
  #game-feedback-host.minitool-has-feedback .map-feedback{display:none}
  #game-feedback-host:has(.feedback-notice) .map-feedback{display:none}
  #game-feedback-host .feedback-notices{height:48px;min-height:48px;overflow:auto;--minitool-row-gap:0;--minitool-column-gap:0;grid-gap:0;gap:0;scroll-snap-type:y mandatory}
  #game-feedback-host .feedback-notice{height:48px;min-height:48px;margin:0;padding:1px 4px;--minitool-row-gap:4px;--minitool-column-gap:4px;grid-gap:4px;gap:4px;align-items:center;scroll-snap-align:start}#game-feedback-host .feedback-notice>.feedback-symbol,#game-feedback-host .feedback-notice>.feedback-art,#game-feedback-host .feedback-notice>.feedback-copy{display:none}
  #game-feedback-host .feedback-summary{display:flex;flex:1;min-width:0;min-height:44px;align-items:center;justify-content:space-between;--minitool-row-gap:4px;--minitool-column-gap:4px;grid-gap:4px;gap:4px;padding:0 3px;text-align:left;background:transparent;color:inherit;font-size:11px}
  #game-feedback-host .feedback-summary strong{font-size:11px;white-space:nowrap}
  #game-feedback-host .feedback-summary span{font-size:9px;white-space:nowrap}
  #game-feedback-host .feedback-notice .paper-button{align-self:center;padding-left:7px;padding-right:7px;padding-inline:7px}
}
.adventure-sheet.feedback-sheet{overflow:hidden}
.feedback-sheet>.feedback-host{display:block;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 3px 3px}
.feedback-sheet .adventure-footer .paper-button{width:100%}
@media(min-width:540px) and (max-height:520px){
  .adventure-sheet.settings-sheet.minitool-has-feedback{overflow:hidden}
  .adventure-sheet.settings-sheet:has(.feedback-notice){overflow:hidden}.adventure-sheet.book-sheet.minitool-has-feedback,.adventure-sheet.bag-sheet.minitool-has-feedback,.adventure-sheet.fly-sheet.minitool-has-feedback,.adventure-sheet.save-sheet.minitool-has-feedback{overflow:hidden}.adventure-sheet.book-sheet:has(.feedback-notice),.adventure-sheet.bag-sheet:has(.feedback-notice),.adventure-sheet.fly-sheet:has(.feedback-notice),.adventure-sheet.save-sheet:has(.feedback-notice){overflow:hidden}.adventure-sheet.book-sheet>.feedback-host,.adventure-sheet.bag-sheet>.feedback-host,.adventure-sheet.fly-sheet>.feedback-host,.adventure-sheet.save-sheet>.feedback-host{max-height:64px;min-height:0;overflow:auto;overscroll-behavior:contain}
  .bag-sheet.minitool-has-feedback .bag-content{flex:1;height:auto;min-height:0}
  .bag-sheet:has(.feedback-notice) .bag-content{flex:1;height:auto;min-height:0}
  .fly-sheet.minitool-has-feedback .compass-body{flex:1;min-height:0}
  .fly-sheet:has(.feedback-notice) .compass-body{flex:1;min-height:0}
}
@media(max-height:300px){.game-screen[data-layout=side] .map-feedback{min-height:20px}.game-screen[data-layout=side] .map-feedback .field-note{font-size:9px;line-height:1.4;padding:0}}
@media(prefers-reduced-motion:reduce){.resource-gained,.key-group.resource-gained .held-key,.tool-discovered{animation:none}}

.bottom-nav button.tool-discovered{background:#ece9d2;outline:2px solid #9a9969;outline-offset:-2px;animation:tool-discovered 1.2s ease-in-out 3}
@keyframes tool-discovered{50%{background:#dddcb9;transform:translateY(-2px)}}
@media(prefers-reduced-motion:reduce){.bottom-nav button.tool-discovered{animation:none}}

.fps-meter{position:absolute;z-index:6;top:calc(8px + var(--safe-area-inset-top,0px));top:calc(8px + var(--safe-area-inset-top,env(safe-area-inset-top,0px)));right:calc(10px + var(--safe-area-inset-right,0px));right:calc(10px + var(--safe-area-inset-right,env(safe-area-inset-right,0px)));margin:0;min-width:58px;padding:3px 7px;border:1.5px solid #69705d;border-radius:4px 6px 5px 3px;background:#faf7eb;color:#343d30;font-size:11px;font-weight:700;line-height:1.4;font-variant-numeric:tabular-nums;letter-spacing:.2px;text-align:center;pointer-events:none;box-shadow:2px 2px 0 #202b2814}
