*,*:before,*:after{box-sizing:border-box}html,body,#shell-root{width:100vw;max-width:100vw;min-width:100vw;min-height:100vh;height:100vh;margin:0;padding:0;touch-action:manipulation;overflow-x:hidden}@supports (height: 100svh){html,body,#shell-root{min-height:100svh;height:100svh}}@supports (height: 100dvh){html,body,#shell-root{min-height:100dvh;height:100dvh}}#shell-root{display:flex;flex-direction:column}#shell-root>*{flex:1 1 auto;min-height:0}html,body{background:#020817;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:Sora,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}button,[role=button],a,input,select,textarea,label{touch-action:manipulation}html,body,#shell-root,#shell-root *{-webkit-user-select:text;user-select:text}#root.runtime-host-root{width:100%;min-height:100%;height:100%;display:flex;flex-direction:column}.runtime-shell-root{position:relative;width:100%;min-height:100%;height:100%;display:flex;flex-direction:column}.runtime-shell-root>*{flex:1 1 auto;min-height:0}.runtime-update-chip{position:fixed;right:16px;bottom:16px;z-index:1001;border:1px solid rgba(125,211,252,.35);background:#051020f2;border-radius:14px;padding:10px 12px;display:flex;align-items:center;gap:10px}.runtime-update-chip-text{color:#cfe7ff;font-size:12px;font-weight:600}.runtime-update-chip-button{min-height:30px;border-radius:10px;border:1px solid #2f7bcb;background:#1a5faa;color:#f8fbff;font-size:12px;font-weight:700;padding:0 10px}.runtime-shell-overlay{position:fixed;inset:0;width:100vw;height:100vh;z-index:1000;background:radial-gradient(circle at 15% 10%,rgba(59,130,246,.16),transparent 40%),radial-gradient(circle at 88% 90%,rgba(14,165,233,.2),transparent 35%),#020617;display:flex;align-items:flex-start;justify-content:center;padding:20px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.runtime-shell-card{width:min(560px,100%);max-height:calc(100vh - 40px);border-radius:24px;border:1px solid rgba(148,163,184,.25);background:linear-gradient(180deg,#071426f5,#040d19fa);box-shadow:0 32px 64px #02061794,inset 0 1px #e2e8f014;padding:32px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;position:relative;overflow-x:hidden;overflow-y:auto}@supports (height: 100dvh){.runtime-shell-card{max-height:calc(100dvh - 40px)}}.runtime-shell-card:before{content:"";position:absolute;inset:-40% -30% auto;height:190px;background:radial-gradient(circle at 50% 50%,rgba(34,211,238,.2) 0%,transparent 72%);background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--runtime-brand-primary, #22d3ee) 38%,transparent) 0%,transparent 72%);pointer-events:none;opacity:.6}.runtime-shell-brand-wrap{width:112px;height:112px;border-radius:28px;background:#0b1c34eb;border:1px solid rgba(56,189,248,.45);border:1px solid color-mix(in srgb,var(--runtime-brand-primary, #22d3ee) 55%,#ffffff 18%);display:inline-flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 10px 30px #00000073,0 0 0 1px #ffffff0a inset;z-index:1}.runtime-shell-brand-logo{width:100px;height:100px;object-fit:contain}.runtime-shell-brand-mark{color:#fff;font-weight:800;font-size:28px;letter-spacing:.08em}.runtime-shell-title{margin:2px 0 0;color:#f8fafc;font-size:clamp(22px,3.2vw,28px);line-height:1.2;font-weight:800;z-index:1}.runtime-shell-subtitle{margin:0;color:#f1f5f9e6;font-size:14px;line-height:20px;max-width:40ch;z-index:1}.runtime-shell-manifest-target{margin:-4px 0 0;color:#94a3b8f2;font-size:12px;line-height:17px;max-width:46ch;word-break:break-word;z-index:1}.runtime-shell-spinner{width:54px;height:54px;border-radius:50%;border:3px solid rgba(255,255,255,.18);border-top-color:#ffffffeb;animation:runtime-shell-spin .8s linear infinite}.runtime-shell-progress-label{margin:0;color:#e2e8f0f0;font-size:13px;line-height:18px;font-weight:600;z-index:1}.runtime-shell-error-box{border-radius:12px;border:1px solid rgba(248,113,113,.4);background:#7f1d1d59;padding:12px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:min(460px,100%);z-index:1}.runtime-shell-error-box p{margin:0;color:#fee2e2;font-size:13px;line-height:19px;font-weight:600}.runtime-shell-retry{min-height:30px;border-radius:10px;border:1px solid rgba(248,113,113,.45);background:#dc2626bf;color:#fff5f5;font-size:12px;font-weight:700;padding:0 12px}.runtime-shell-error-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}.runtime-shell-install{min-height:38px;border-radius:999px;border:1px solid rgba(56,189,248,.62);border:1px solid color-mix(in srgb,var(--runtime-brand-primary, #22d3ee) 72%,#cbd5e1 28%);background:linear-gradient(140deg,var(--runtime-brand-primary, #22d3ee) 0%,var(--runtime-brand-secondary, #7dd3fc) 100%);background:linear-gradient(140deg,color-mix(in srgb,var(--runtime-brand-primary, #22d3ee) 82%,#0f172a 18%),color-mix(in srgb,var(--runtime-brand-secondary, #7dd3fc) 78%,#0f172a 22%));color:#f8fafc;font-size:13px;font-weight:700;padding:0 16px;box-shadow:0 8px 24px #08122373}@keyframes runtime-shell-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
