/* Product-wide finishing pass: real controls keep their focus and motion preferences. */
.route-loading{min-height:310px;display:grid;align-content:center;justify-items:center;text-align:center;gap:12px;padding:35px!important;background:var(--surface,#fff);color:var(--ink,#26252b)}.route-loading h2,.route-loading p{margin:0;max-width:430px}.route-loading-mark{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;background:#eeebfb;color:#6755c4;font-size:32px;animation:route-breathe 1.6s ease-in-out infinite}.route-loading[aria-busy=false] .route-loading-mark{animation:none}
@keyframes route-breathe{50%{transform:scale(.93);opacity:.55}}
html[data-theme=dark] .route-loading{background:#1c1c1e;color:#f1eff7}html[data-theme=dark] .route-loading-mark{background:#2b263d;color:#c1b6ff}
:is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #826ee5;outline-offset:4px}summary{cursor:pointer}.lx-skip:focus-visible{z-index:1000}
html[data-motion=reduce] :is(.route-loading-mark,.profile-hero-art,.account-dialog){animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){html:not([data-motion=full]) :is(.route-loading-mark,.profile-hero-art,.account-dialog){animation:none!important;transition:none!important}}
html[data-page-hidden=true] *,html[data-page-hidden=true] *::before,html[data-page-hidden=true] *::after{animation-play-state:paused!important}
.lab-readout{position:fixed;bottom:75px;right:12px;z-index:2000;background:#fff;color:#26252b;border:1px solid #d7d3e3;border-radius:10px;padding:8px 12px;font:11px/1.5 system-ui;max-width:270px;box-shadow:0 4px 24px #0002}.lab-readout output{display:block;white-space:pre-wrap}html[data-theme=dark] .lab-readout{background:#1c1c1e;color:#eee}

#main{min-height:calc(100svh - 120px)}

#sync-status{display:inline-block;min-width:180px;text-align:right}@media(max-width:760px){#sync-status{min-width:0;width:105px;text-align:left}}

/* Punshine wordmark fits the shared sidebar without crowding navigation. */
.sidebar .brand{gap:9px;font-size:23px;letter-spacing:-.9px;white-space:nowrap}
.sidebar .brand-mark{width:35px;height:35px;flex:0 0 35px;font-size:25px;border-radius:11px}
.sidebar .brand-mark span{font-size:12px;right:4px;top:2px}
.sidebar .brand-name{line-height:1.2}.sidebar .brand-dot{margin-left:-7px}
.account-brand{font-size:30px;letter-spacing:-1px}
@media(max-width:760px){.sidebar .brand{font-size:22px}.sidebar .brand-mark{width:32px;height:32px;flex-basis:32px;font-size:23px}}
