.logos-loading[hidden] { display:none !important; }
.logos-loading { position:fixed; z-index:1000; color:var(--text,#f4f7ff); font-family:var(--font-body,system-ui); }
.logos-loading:focus { outline:none; }
.logos-loading--page { inset:0; display:grid; place-items:center; padding:24px; overflow:auto; background:radial-gradient(ellipse at 20% 25%,rgba(79,127,255,.10),transparent 58%),color-mix(in srgb,var(--bg,#050914) 94%,transparent); }
.logos-loading-card { width:min(100%,500px); margin:auto; padding:36px 32px 30px; text-align:center; border:1px solid var(--border,#283e65); border-radius:24px; background:radial-gradient(ellipse at 100% 0%,rgba(79,127,255,.12),transparent 65%),var(--surface,#0b1326); box-shadow:0 28px 90px #0002; }
.logos-loading-mark { position:relative; width:96px; height:96px; margin:0 auto 20px; display:grid; place-items:center; }
.logos-loading-mark img { width:56px; height:56px; object-fit:contain; }
.logos-loading-rings { position:absolute; inset:5px; border:2px solid rgba(79,127,255,.14); border-radius:50%; animation:logos-loading-turn 1.8s linear infinite; }
.logos-loading-rings::before { content:""; position:absolute; inset:-2px; border:2px solid transparent; border-top-color:var(--accent,#4f7fff); border-right-color:var(--accent,#4f7fff); border-radius:50%; transform:rotate(-35deg); }
.logos-loading-rings::after { content:""; position:absolute; inset:5px; border:2px solid transparent; border-bottom-color:var(--blue,#32b4ff); border-radius:50%; transform:rotate(-35deg); }
.logos-loading-kicker { margin:0 0 14px; font-size:10px; font-weight:700; letter-spacing:2px; color:var(--accent,#7ca3ff); }
.logos-loading-title { margin:0 0 12px; color:var(--text,#f4f7ff); font-family:var(--font-display,inherit); font-size:clamp(23px,3vw,28px); line-height:1.25; font-weight:700; }
.logos-loading-detail { margin:0; color:var(--muted,#a8b8d4); font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.logos-loading-note { border-top:1px solid var(--border,#233552); padding-top:18px; margin:24px 0 0; color:var(--muted,#879bbd); font-size:12px; }
.logos-loading--inline { right:24px; bottom:24px; max-width:calc(100vw - 32px); pointer-events:none; }
.logos-loading--inline .logos-loading-card { display:grid; grid-template-columns:40px 1fr; gap:0 14px; width:340px; max-width:calc(100vw - 32px); padding:16px 18px; border-radius:18px; text-align:left; }
.logos-loading--inline .logos-loading-mark { grid-row:1 / 3; width:40px; height:40px; margin:0; }
.logos-loading--inline .logos-loading-mark img { width:24px; height:24px; }
.logos-loading--inline .logos-loading-rings { inset:0; }
.logos-loading--inline .logos-loading-kicker,.logos-loading--inline .logos-loading-note { display:none; }
.logos-loading--inline .logos-loading-title { font-size:13px; margin:0 0 3px; }
.logos-loading--inline .logos-loading-detail { font-size:12px; line-height:1.45; }
@keyframes logos-loading-turn { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce) { .logos-loading-rings { animation:none; } }
@media (max-width:480px) { .logos-loading--page { padding:16px; } .logos-loading-card { padding:28px 24px 24px; } .logos-loading--inline { right:16px; bottom:16px; } }
