/* TackleSonar R19 targeted QA fixes */
/* Exactly one advertising geography is rendered by layout.php. */
.global-ad-mid{padding-top:24px!important;padding-bottom:24px!important;display:flex;justify-content:center;align-items:center}.global-ad-mid:empty{display:none!important}.global-ad-mid .ad-frame{margin-inline:auto!important}
/* Hero search must remain readable even when the dark hero's inherited color changes form controls. */
.hero-search input{color:#071f3f!important;background:#fff!important;caret-color:#087fb1!important;-webkit-text-fill-color:#071f3f!important;opacity:1!important}.hero-search input::placeholder{color:#718396!important;opacity:1!important}.hero-search input:-webkit-autofill{-webkit-text-fill-color:#071f3f!important;box-shadow:0 0 0 1000px #fff inset!important}
/* Deterministic 3-second wave crash. It disappears completely, then leaves the logo + endlessly rotating full sonar sweep. */
.home-sonar-visual-r15{overflow:visible!important}.home-sonar-visual-r15 .home-wave-scene-r15{opacity:0;transform-origin:62% 70%;pointer-events:none}.home-sonar-visual-r15.r19-wave-intro .home-wave-scene-r15{animation:r19WaveScene 3s cubic-bezier(.18,.74,.2,1) both!important}.home-sonar-visual-r15.r19-wave-intro .wave-body-r15{animation:r19WaveBody 3s cubic-bezier(.16,.72,.16,1) both!important;transform-origin:65% 72%}.home-sonar-visual-r15.r19-wave-intro .wave-foam-r15{animation:r19WaveFoam 2.7s ease-out both!important;transform-origin:61% 56%}.home-sonar-visual-r15.r19-wave-intro .wave-spray-r15{animation:r19WaveSpray 2.4s ease-out .15s both!important}.home-sonar-logo-r15{opacity:1!important;transform:none!important;animation:r19LogoReveal 1s 2.05s cubic-bezier(.18,.85,.2,1) both!important}.home-sonar-rings-r15{opacity:.82!important;transform:scale(1)!important;animation:r19RingIdle 4.6s ease-in-out 3s infinite!important}.home-sonar-sweep-r15{opacity:.50!important;transform-origin:50% 50%!important;animation:r19SonarSweep 4.2s linear infinite!important;will-change:transform}
@keyframes r19WaveScene{0%{opacity:0;transform:translate3d(24%,32%,0) scale(.58) rotate(5deg)}8%{opacity:1}48%{opacity:1;transform:translate3d(0,-2%,0) scale(1.04) rotate(-1deg)}78%{opacity:.92;transform:translate3d(-5%,-8%,0) scale(1.11) rotate(-2deg)}100%{opacity:0;visibility:hidden;transform:translate3d(-13%,-16%,0) scale(1.2) rotate(-4deg)}}
@keyframes r19WaveBody{0%{transform:translateX(15%) scale(.78,.68)}48%{transform:translateX(0) scale(1.06,1.08)}100%{transform:translateX(-5%) scale(1.14,.91)}}
@keyframes r19WaveFoam{0%{opacity:.2;transform:translate(14%,22%) scale(.58)}46%{opacity:1;transform:translate(0,0) scale(1.08)}100%{opacity:0;transform:translate(-8%,-10%) scale(1.24)}}
@keyframes r19WaveSpray{0%{opacity:0;transform:translate(12%,24%) scale(.42)}42%{opacity:1}100%{opacity:0;transform:translate(-14%,-28%) scale(1.45)}}
@keyframes r19LogoReveal{0%{opacity:0;transform:scale(.78);filter:blur(7px)}70%{opacity:1;transform:scale(1.035);filter:blur(0)}100%{opacity:1;transform:scale(1)}}
@keyframes r19RingIdle{50%{transform:scale(1.035);opacity:.68}}
@keyframes r19SonarSweep{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
/* Admin image controls */
.admin-image-assist-r19{position:absolute;z-index:12;left:12px;top:12px;display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:7px 10px;border:1px solid #79d7eb;border-radius:999px;background:#effcff;color:#046f95;font-weight:900;font-size:11px;box-shadow:0 9px 22px rgba(4,31,64,.14);cursor:pointer}.deal-media-r15,.product-media,.product-image-panel,.brand-logo-r7{position:relative}.image-search-dialog-r19{width:min(960px,94vw)!important;max-width:960px!important}.image-search-current-r19{display:grid;grid-template-columns:160px 1fr;gap:16px;align-items:center;padding:14px;border:1px solid #d7e6ed;border-radius:16px;background:#f7fbfd}.image-search-current-r19 img{width:160px;height:125px;object-fit:contain;background:#fff;border-radius:12px}.image-candidate-grid-r19{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.image-candidate-r19{display:grid;gap:9px;padding:10px;border:1px solid #d7e5ec;border-radius:15px;background:#fff}.image-candidate-r19 img{width:100%;aspect-ratio:4/3;object-fit:contain;border-radius:10px;background:#f5f9fb}.image-candidate-r19 small{min-height:32px;color:#5f7688}.image-candidate-r19 button{width:100%}.image-search-status-r19{min-height:22px;margin-top:12px;color:#4e687a;font-weight:750}.brand-admin-image-r19{margin-top:12px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.brand-admin-image-r19 input{min-width:min(430px,75vw);min-height:42px;border:1px solid #cbdde7;border-radius:11px;padding:8px 11px}
@media(max-width:700px){.image-search-current-r19{grid-template-columns:1fr}.image-search-current-r19 img{width:100%;height:180px}.image-candidate-grid-r19{grid-template-columns:1fr}.global-ad-mid{padding-top:14px!important;padding-bottom:14px!important}}
/* Product-image assistant surfaces. */
.product-stage-r6{position:relative}.image-admin-list-r19{display:grid;gap:10px}.image-admin-row-r19{display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px;border:1px solid #d7e5ec;border-radius:15px;background:#fff}.image-admin-thumb-r19{width:74px;height:62px;border-radius:11px;background:#f4f9fb;display:grid;place-items:center;overflow:hidden}.image-admin-thumb-r19 img{width:100%;height:100%;object-fit:contain}.image-admin-thumb-r19 span{font-size:9px;font-weight:950;letter-spacing:.1em;color:#6b8190}.image-admin-copy-r19{display:grid;gap:4px;min-width:0}.image-admin-copy-r19 strong{font-size:14px;color:#08264b}.image-admin-copy-r19 small{color:#61798b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-search-current-r19 label{display:grid;gap:5px;margin-top:10px;font-size:11px;font-weight:850;color:#527085}.image-search-current-r19 input{width:100%;min-height:40px;border:1px solid #cbdde7;border-radius:10px;padding:8px 10px;color:#08264b;background:#fff}.image-candidate-meta-r19{display:flex;gap:7px;align-items:center;justify-content:space-between;font-size:10px;color:#658090}.image-candidate-source-r19{font-weight:900;color:#047da4}.image-candidate-r19 button{border:0;border-radius:10px;background:#08bde7;color:#031d3d;min-height:38px;font-weight:950;cursor:pointer}.image-candidate-r19 button:hover{filter:brightness(.96)}
@media(max-width:700px){.image-admin-row-r19{grid-template-columns:64px minmax(0,1fr)}.image-admin-row-r19>.btn{grid-column:1/-1}.image-admin-copy-r19 small{white-space:normal}}
