/* The native startup screen stays visible until the app's real readiness checks pass. */
#app .loading-wrapper{background:#faf7f1!important;flex-direction:column!important;gap:24px!important;}
#app .loading-wrapper .loading-img{display:none!important;}
#app .loading-wrapper::after{content:'Loading your page…';opacity:0;animation:sf-loading-text 0s .5s forwards;font:16px/1.5 system-ui,sans-serif;color:#36564b;}
#sf-startup-error{position:fixed;z-index:1100;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-sizing:border-box;width:min(440px,calc(100% - 32px));max-height:90dvh;overflow:auto;padding:28px;background:#faf7f1;color:#203c38;border:1px solid #cbd7d0;border-radius:18px;box-shadow:0 12px 48px #203c3826;font:16px/1.6 system-ui,sans-serif;}
#sf-startup-error h1{font:30px/1.2 Georgia,serif;margin:0 0 16px;}
#sf-startup-error p{margin:0 0 16px;}#sf-startup-error .sf-startup-detail{font-size:14px;color:#49645b;}
#sf-startup-error button{display:block;width:100%;border:0;border-radius:10px;padding:12px 20px;background:#203c38;color:#fff;font:600 16px/1.5 system-ui,sans-serif;cursor:pointer;}
#sf-startup-error a{display:block;text-align:center;margin-top:16px;color:#203c38;text-decoration:underline;}
#sf-startup-error :focus-visible{outline:3px solid #507862;outline-offset:4px;}
html.dark #app .loading-wrapper{background:#142721!important;}html.dark #app .loading-wrapper::after{color:#d6e4db;}

/* Delayed text only; no pulsing or moving logo. */
@keyframes sf-loading-text{to{opacity:1}}