/* Stable shell; content transitions do not restart the document entry effect. */
:root[data-soft-navigation] body.signed-in #content{animation:none}
:root[data-navigation-loading]::before{content:'';position:fixed;z-index:1400;top:0;left:0;width:100%;height:2px;background:var(--accent);opacity:.6}
.navigation-note{position:fixed;top:75px;left:50%;transform:translateX(-50%);z-index:1200;max-width:calc(100vw - 32px);padding:14px 20px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--text);box-shadow:var(--shadow)}
.navigation-note[hidden]{display:none}
body .cabinet-curve{display:block}
@media(max-width:1100px){body .cabinet-curve{width:180px;opacity:.35}}
@media(max-width:700px){body .cabinet-curve{width:140px;opacity:.2}}
#furnace-detail .live-summary,#furnace-detail .run-metrics,#furnace-detail .program-heading,#main-run [data-run-chart]{transition:opacity .45s ease}
#furnace-detail .live-summary{min-height:342px;align-self:start}
@media(max-width:950px){#furnace-detail .live-summary{min-height:180px}}
@media(max-width:700px){#furnace-detail .live-summary{min-height:160px}}
#furnace-detail:not([data-ready]) .live-summary,#furnace-detail:not([data-ready]) .run-metrics,#furnace-detail:not([data-ready]) .program-heading,#main-run:not([data-ready]) [data-run-chart]{opacity:0}
#furnace-detail:not([data-ready]) .program-heading{pointer-events:none}
.reading-enter{animation:readings-in .45s ease-out both}
@keyframes readings-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){
 @view-transition{navigation:none}
 body.signed-in #content{view-transition-name:page-content;animation:page-fallback-enter .36s ease-out both}
 body.signed-in .main-nav{view-transition-name:page-navigation}
 body.signed-in .topbar{view-transition-name:page-header}
 :root[data-page-transition=active] body #content{animation:none}
 :root:not(.theme-changing)::view-transition-old(root),
 :root:not(.theme-changing)::view-transition-new(root){animation:none;mix-blend-mode:normal}
 :root:not(.theme-changing)::view-transition-old(page-content){animation:page-content-out .22s ease-in both;mix-blend-mode:normal}
 :root:not(.theme-changing)::view-transition-new(page-content){animation:page-content-in .4s cubic-bezier(.2,.7,.2,1) both;mix-blend-mode:normal}
 ::view-transition-group(page-navigation),::view-transition-group(page-header){animation-duration:.35s}
 .theme-changing #content,.theme-changing .main-nav,.theme-changing .topbar{view-transition-name:none}
 @keyframes page-content-out{to{opacity:0;transform:translateY(-10px)}}
 @keyframes page-content-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
 @keyframes page-fallback-enter{from{opacity:.25}to{opacity:1}}
}
@media(prefers-reduced-motion:reduce){
 @view-transition{navigation:none}
 body.signed-in #content{animation:none}
 .reading-enter{animation:none}
 #furnace-detail .live-summary,#furnace-detail .run-metrics,#furnace-detail .program-heading,#main-run [data-run-chart]{transition:none}
}
