/* Page surfaces are available before the app or sign-in screen starts. */
:root{--casvilo-page:#f7f6ef;--casvilo-surface:#ffffff;--casvilo-ink:#2e3528;--casvilo-muted:#535b4a;--casvilo-accent:#56663c;--casvilo-on-accent:#fff;--casvilo-soft:#edf0e5;--casvilo-line:#dddeda;--casvilo-control:#879476;--casvilo-field:#ffffff;--casvilo-logo-surface:#f7f6ef;--casvilo-error-bg:#fbe9e5;--casvilo-error-ink:#a13d30;color-scheme:light;background:var(--casvilo-page)}
html[data-casvilo-theme=sage-dark]{--casvilo-page:#191d21;--casvilo-surface:#262c32;--casvilo-ink:#f3f5f7;--casvilo-muted:#bdc6ce;--casvilo-accent:#b8cb91;--casvilo-on-accent:#192214;--casvilo-soft:#303840;--casvilo-line:#48545f;--casvilo-control:#75828e;--casvilo-field:#1d2329;--casvilo-error-bg:#542f29;--casvilo-error-ink:#ffe0d7;color-scheme:dark}
html,body{min-height:100%;margin:0;background:var(--casvilo-page);color:var(--casvilo-ink)}
.casvilo-loading{box-sizing:border-box;display:grid;justify-items:center;align-content:center;gap:20px;width:min(440px,calc(100% - 28px));min-height:280px;margin:7vh auto;padding:30px;background:var(--casvilo-surface);border:1px solid var(--casvilo-line);border-radius:18px;color:var(--casvilo-ink);text-align:center;font:16px/1.5 system-ui,sans-serif}
.casvilo-loading .welcome-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin:0;font-size:28px;color:var(--casvilo-ink)}
.casvilo-loading .welcome-brand img{width:54px;height:54px;padding:5px;box-sizing:border-box;border-radius:10px;background:var(--casvilo-logo-surface)}
.casvilo-loading p{margin:0;color:var(--casvilo-muted)}
.casvilo-loading-ring{display:block;box-sizing:border-box;width:36px;height:36px;border:3px solid var(--casvilo-line);border-top-color:var(--casvilo-accent);border-radius:50%;animation:casvilo-loading-spin .9s linear infinite}
@keyframes casvilo-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.casvilo-loading-ring{animation:none}}
