/* A little paper paw waits only for the photograph that owns this frame. */
.scene-image-status{position:absolute;inset:0;z-index:3;display:grid;place-items:center;background:var(--palegreen);color:var(--navy);pointer-events:none}
.scene-image-paw{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:var(--cream);box-shadow:0 0 0 1px #74824e38,3px 5px 0 #11283b0c;transform:rotate(-9deg)}
.scene-image-paw svg{width:31px;height:31px;fill:var(--navy);stroke:none;opacity:.86}
.scene-image-status[data-state=loading] .scene-image-paw{animation:sd-paw-wait 1.5s ease-in-out infinite}
.scene-image-status[data-state=loading] .scene-image-message{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.scene-image-status[data-state=error] .scene-image-paw{display:none}
.scene-image-status[data-state=error] .scene-image-message{font-size:12px;line-height:1.5;padding:18px;text-align:center}
.plan-section>.scene-image-status{z-index:-2;background:var(--palegreen)}
.hero-photo[data-image-state=loading] .dog-hello,.hero-photo[data-image-state=error] .dog-hello{visibility:hidden}
.dog-hello-wait{position:absolute;left:50%;top:50%;width:48px;height:48px;margin:-24px 0 0 -24px;display:none;box-shadow:0 0 0 1px #f8f1df88,0 3px 12px #11283b22}
.dog-hello-wait svg{width:27px;height:27px}
.dog-hello-mounted:is([data-hello-state=loading],[data-hello-state=poster-loading]) .dog-hello-wait{display:grid;animation:sd-paw-wait 1.5s ease-in-out infinite}
.dog-hello-mounted:is([data-hello-state=loading],[data-hello-state=poster-loading]) .dog-hello-ring{opacity:0;animation:none}
@keyframes sd-paw-wait{0%,100%{opacity:.7;transform:rotate(-9deg) scale(.94)}50%{opacity:1;transform:rotate(3deg) scale(1.04)}}
html.motion-off .scene-image-paw{animation:none!important}
@media(prefers-reduced-motion:reduce){.scene-image-paw{animation:none!important}}
@media(forced-colors:active){.scene-image-status{background:Canvas;color:CanvasText}.scene-image-paw{background:Canvas;box-shadow:none;border:1px solid CanvasText}.scene-image-paw svg{fill:CanvasText}}

/* The approved sun is a precise pointer, including newly mounted controls. */
:where(a[href],button,summary,label,select,input[type=checkbox],input[type=radio],input[type=range],input[type=button],input[type=submit],input[type=reset],input[type=color],input[type=file],[role=button],[role=link],[role=tab],[role=checkbox],[role=radio],[role=switch],[role=menuitem]){cursor:var(--sd-control-cursor,pointer)}
:where(input:not([type]),input[type=text],input[type=search],input[type=tel],input[type=url],input[type=email],input[type=password],input[type=number],textarea,[contenteditable]:not([contenteditable=false]),[role=textbox]){cursor:text}
.sd-cursor{display:none;opacity:1;transition:none;z-index:10000}
.sd-cursor svg{transform-origin:center;filter:drop-shadow(0 1px 1px #11283b40)}
.sd-cursor[data-down=true] svg{transform:scale(.84)}
@media(hover:hover) and (pointer:fine) and (min-width:681px) and (forced-colors:none){
 html.sd-cursor-ready{--sd-control-cursor:none;cursor:none}
 html.sd-cursor-ready .sd-cursor{display:block}
 html.sd-cursor-ready dialog,html.sd-cursor-ready dialog::backdrop{--sd-control-cursor:url('assets/sun-cursor.svg') 15 15,auto;cursor:var(--sd-control-cursor)}
 html.sd-cursor-ready:has(dialog[open]) .sd-cursor,html.sd-cursor-ready:has(:disabled:hover) .sd-cursor{display:none}
}
html.motion-off .sd-cursor *,html.sd-quiet .sd-cursor *{transition:none!important}
@media(prefers-reduced-motion:reduce){.sd-cursor *{transition:none!important}}

/* Native olive-green scrollbars follow the camper palette and rounded details. */
@supports not selector(::-webkit-scrollbar){
 html,body,dialog,textarea{scrollbar-color:#74824e #f8f1df;scrollbar-width:thin}
}
@supports selector(::-webkit-scrollbar){
 html,body,dialog,textarea{scrollbar-color:auto;scrollbar-width:auto}
 ::-webkit-scrollbar{width:12px;height:12px}
 ::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:#f8f1df}
 ::-webkit-scrollbar-thumb{background:#74824e;border:3px solid #f8f1df;border-radius:12px}
 ::-webkit-scrollbar-thumb:hover{background:#53613a}
 ::-webkit-scrollbar-thumb:active{background:#11283b}
}
@supports(-moz-appearance:none){html,body,dialog,textarea{scrollbar-color:#74824e #f8f1df;scrollbar-width:thin}}
@media(forced-colors:active){
 html,body,dialog,textarea{scrollbar-color:auto;scrollbar-width:auto;forced-color-adjust:auto}
 ::-webkit-scrollbar,::-webkit-scrollbar-track,::-webkit-scrollbar-thumb,::-webkit-scrollbar-thumb:hover,::-webkit-scrollbar-thumb:active,::-webkit-scrollbar-corner{all:revert}
}
