/* Kumidor app release: 20260914-kc-logo-b2. Generated by scripts/release_version.py. */
[v-cloak] { display: none !important; }
.app-loading-shell { align-items:center; background:#f4eee5; color:#2b2119; display:flex; inset:0; justify-content:center; min-height:100dvh; padding:24px; position:fixed; z-index:9999; }
.app-loading-card { background:#fffaf3; border:1px solid #d8c8b2; border-radius:16px; box-shadow:0 18px 48px rgba(66,42,22,.12); max-width:420px; padding:28px; width:100%; }
.app-loading-mark { display:inline-block; height:44px; margin-right:12px; object-fit:contain; vertical-align:middle; width:44px; }
.app-loading-card strong { font:700 22px Georgia,serif; vertical-align:middle; }
.app-loading-card small { color:#796b5d; display:block; font-size:12px; margin:16px 0 8px; }
.app-loading-card p { color:#796b5d; font-size:13px; margin:10px 0 0; }
.app-loading-line { animation:kumidor-loading 1.4s ease-in-out infinite; background:#ad7b36; border-radius:4px; display:block; height:3px; margin-top:20px; transform-origin:left; width:100%; }
@keyframes kumidor-loading { 0%,100% { opacity:.35; transform:scaleX(.3); } 50% { opacity:1; transform:scaleX(1); } }
body:has(#app:not([v-cloak])) .app-loading-shell { display:none; }

/* The static 503 shell deliberately shares this stylesheet so it also works
   under the strict CSP stage without an inline style exception. */
.offline-shell { align-items:center; background:#0f172a; color:#f1f5f9; display:grid; font:16px system-ui,sans-serif; margin:0; min-height:100vh; place-items:center; }
.offline-card { max-width:30rem; padding:2rem; text-align:center; }
.offline-card p { color:#94a3b8; line-height:1.7; }
