/* Each circle, its interior and its motif are already one finished bitmap.
   Keep the existing control anchors, captions, handlers and state visibility. */
html body img.garden-ui-complete-image {
 display:block!important;
 box-sizing:border-box!important;
 position:static;
 flex:none;
 width:100%;height:100%;min-width:0;min-height:0;
 max-width:none;max-height:none;
 margin:0!important;padding:0!important;
 border:0!important;border-radius:0!important;
 background:none!important;box-shadow:none!important;
 object-fit:contain!important;object-position:center!important;
 clip:auto!important;clip-path:none!important;
 pointer-events:none;user-select:none;-webkit-user-select:none;
 vertical-align:middle;
}

/* Source nodes stay available to their existing renderers, without a second
   visible layer. No product art, field sprites or animal sprites are selected. */
html body .garden-complete-source,
html body .garden-raster-source,
html body .garden-ui-icon:has(>img.garden-ui-complete-image)>.garden-ui-atlas,
html body .garden-ui-icon:has(>img.garden-ui-complete-image)>.garden-ui-tool-art,
html body .garden-ui-icon:has(>img.garden-ui-complete-image)>.garden-ui-crop-thumbnail,
html body .garden-gauge-tap-icon:has(>img.garden-ui-complete-image)>.garden-ui-atlas,
html body button:has(>img.garden-shared-complete)>svg.nanamono-choice-icon,
html body .nm-game-home:has(>img.garden-shared-complete)>svg {
 display:none!important;
}

html body .garden-ui-icon:has(>img.garden-ui-complete-image) {
 box-sizing:border-box;display:block;position:relative;
 padding:0!important;margin:0;
 border:0!important;border-radius:0!important;
 background:none!important;box-shadow:none!important;
 overflow:visible;clip:auto;clip-path:none;
 visibility:visible;
}
html body .garden-ui-icon>img.garden-ui-complete-image {
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
}

/* More specific scene rules formerly added their own 5–11px inner inset.
   Removing that inset displays the complete image across the existing size. */
html body button.garden-ui-button:has(.garden-ui-complete-image),
html body #gardenApp :is(.location,#sceneHome) button.garden-ui-button:has(.garden-ui-complete-image),
html body #gardenApp>.appbar button.garden-ui-button:has(.garden-ui-complete-image),
html body summary.garden-ui-summary:has(.garden-ui-complete-image),
html body button.garden-ui-farm-row>.garden-ui-icon:has(>img.garden-ui-complete-image),
html body .garden-gauge-tap-icon:has(>img.garden-ui-complete-image) {
 box-sizing:border-box!important;
 padding:0!important;border:0!important;border-radius:0!important;
 background:none!important;background-image:none!important;
 box-shadow:none!important;backdrop-filter:none!important;
 -webkit-backdrop-filter:none!important;
 overflow:visible;
}
html body button.garden-ui-button:has(.garden-ui-complete-image) {
 min-width:44px!important;min-height:44px!important;
}
html body button.garden-ui-button[aria-pressed=true]:has(.garden-ui-complete-image) {
 outline:0;
}
html body button.garden-ui-button[aria-pressed=true]>.garden-ui-icon>img.garden-ui-complete-image {
 filter:brightness(1.08) drop-shadow(0 0 3px #477d59);
}
html body button.garden-ui-button>.garden-ui-icon:has(>img.garden-ui-complete-image) {
 width:100%!important;height:100%!important;
}
html body button.garden-ui-button.garden-v192-door-control {
 background-image:none!important;
}
html body .garden-v192-door-control>.garden-ui-icon:has(>img.garden-ui-complete-image) {
 visibility:visible!important;
}

/* The farm-name row keeps its text and its full-row hit area. */
html body button.garden-ui-farm-row:has(.garden-ui-complete-image) {
 min-height:56px;
}
html body button.garden-ui-farm-row>.garden-ui-icon:has(>img.garden-ui-complete-image) {
 width:48px!important;height:48px!important;flex:0 0 48px;
}
html body .garden-gauge-tap-icon:has(>img.garden-ui-complete-image) {
 width:44px!important;height:44px!important;
 min-width:44px!important;min-height:44px!important;
}
html body summary.garden-ui-summary:has(.garden-ui-complete-image) {
 min-width:44px;min-height:44px;
}

/* Native controls retain their existing text and layout. The native mirror
   uses the original icon's box; icon-only controls fill the whole hit area. */
html body img.garden-native-complete {
 width:24px;height:24px;
}
html body #gardenCalendarButton:has(>img.garden-native-complete) {
 min-height:44px!important;
}
html body #gardenApp>.appbar>#gardenCalendarButton>img.garden-native-complete {
 width:36px!important;height:36px!important;flex:none;
}
html body .garden-center-dashboard article>button>img.garden-native-complete,
html body #centerClinicOpen>img.garden-native-complete,
html body .garden-pet-care img.garden-native-complete,
html body .garden-pet-clinic-actions img.garden-native-complete {
 width:36px!important;height:36px!important;
}
html body #sceneShop[data-market=true] #goExchange>img.garden-native-complete {
 width:32px!important;height:32px!important;
}
html body :is(#fieldOpenButton,#fieldCropBook,#centerQuizClose,#cropBookClose,#boardRefresh):has(>img.garden-native-complete),
html body :is(#gardenPetDetail,#gardenPetClinic)>header button:has(>img.garden-native-complete) {
 box-sizing:border-box!important;
 min-width:44px!important;min-height:44px!important;
 padding:0!important;border:0!important;border-radius:0!important;
 background:none!important;box-shadow:none!important;backdrop-filter:none!important;
}
html body :is(#fieldOpenButton,#fieldCropBook,#centerQuizClose,#cropBookClose,#boardRefresh)>img.garden-native-complete,
html body :is(#gardenPetDetail,#gardenPetClinic)>header button>img.garden-native-complete {
 width:100%!important;height:100%!important;
}
html body :is(#centerQuizClose,#cropBookClose,#boardRefresh),
html body :is(#gardenPetDetail,#gardenPetClinic)>header button:has(>img.garden-native-complete) {
 width:44px;height:44px;
}

/* Shared HOME/YES/NO controls are complete images, including their own rim.
   The existing --nm-choice-size and fixed header positions remain in force. */
html body button.nanamono-choice:has(>img.garden-shared-complete),
html body :is(.nm-settlement-overlay,#gardenRestDialog,#gameConfirm) button.nanamono-choice:has(>img.garden-shared-complete),
html body .nm-game-home:has(>img.garden-shared-complete) {
 padding:0!important;border:0!important;border-radius:0!important;
 background:none!important;box-shadow:none!important;backdrop-filter:none!important;
}
html body button.nanamono-choice:has(>img.garden-shared-complete),
html body :is(.nm-settlement-overlay,#gardenRestDialog,#gameConfirm) button.nanamono-choice:has(>img.garden-shared-complete) {
 flex-basis:max(44px,var(--nm-choice-size,66px))!important;
 width:max(44px,var(--nm-choice-size,66px))!important;
 height:max(44px,var(--nm-choice-size,66px))!important;
 min-width:44px!important;min-height:44px!important;
 max-width:none!important;max-height:none!important;
}
html body button.nanamono-choice>img.garden-shared-complete,
html body .nm-game-home>img.garden-shared-complete {
 display:block!important;position:static!important;
 width:100%!important;height:100%!important;
 min-width:0!important;min-height:0!important;
 flex:none!important;visibility:visible;
}

/* Currency is information rather than a new control; retain the established
   HUD, price, reward and exchange-row dimensions. */
html body img.garden-currency-img.garden-ui-complete-image {
 display:inline-block!important;width:24px;height:24px;
}
html body .gardenWallet img.garden-ui-complete-image {width:22px!important;height:22px!important}
html body #sceneExchange .garden-currency-exchange img.garden-ui-complete-image {width:32px!important;height:32px!important}
html body #shopItems small img.garden-ui-complete-image,
html body #requestCards small img.garden-ui-complete-image,
html body #fieldExpansionInfo img.garden-ui-complete-image {width:20px!important;height:20px!important}
html body .garden-ui-caption img.garden-currency-img.garden-ui-complete-image {width:18px!important;height:18px!important}
html body .garden-board-reward img.garden-ui-complete-image {width:14px!important;height:14px!important}

/* Highlight the one complete image. Preserve the established tutorial arrow,
   its position, caption emphasis and the target's scene anchor. */
html body .tutorial-focus:has(.garden-ui-complete-image) {
 outline:0!important;box-shadow:none!important;
 animation:none!important;
}
html body .tutorial-focus:has(.garden-ui-complete-image) img.garden-ui-complete-image {
 filter:brightness(1.08) drop-shadow(0 0 7px #ffc52c);
 animation:garden-complete-icon-glow 1.1s ease-in-out infinite;
}
@keyframes garden-complete-icon-glow {
 50%{filter:brightness(1.2) drop-shadow(0 0 12px #ffbb16)}
}
html body #riverStage #fishPull[data-phase="fight"] img.garden-ui-complete-image {
 transition:transform .08s ease-out,filter .08s ease-out;
 transform-origin:50% 65%;
}
html body #riverStage #fishPull[data-phase="fight"].holding img.garden-ui-complete-image {
 transform:translateY(1px) rotate(-4deg) scale(.94);filter:brightness(1.08);
}

@media(max-height:700px) and (max-aspect-ratio:13/10) {
 html body .garden-center-dashboard article>button>img.garden-native-complete {width:30px!important;height:30px!important}
 html body .garden-board-reward img.garden-ui-complete-image {width:12px!important;height:12px!important}
}
@media(max-height:480px) and (min-aspect-ratio:4/3) {
 html body .garden-board-reward img.garden-ui-complete-image {width:12px!important;height:12px!important}
}
@media(prefers-reduced-motion:reduce) {
 html body .tutorial-focus:has(.garden-ui-complete-image) img.garden-ui-complete-image {animation:none;filter:brightness(1.1)}
 html body #riverStage #fishPull[data-phase="fight"] img.garden-ui-complete-image {transition:none}
}

/* Never expose a control or mirror hidden by gameplay, a dialog or tutorial. */
html body img.garden-ui-complete-image[hidden],
html body button.garden-ui-button[hidden],
html body summary.garden-ui-summary[hidden],
html body .garden-ui-control[hidden],
html body button.nanamono-choice[hidden],
html body .nm-game-home[hidden] {display:none!important}
