
.loading-skeleton { position:relative; overflow:hidden; pointer-events:none; user-select:none; }
.loading-skeleton::after { position:absolute; z-index:3; inset:0; background:linear-gradient(105deg,transparent 32%,color-mix(in srgb,var(--text) 7%,transparent) 49%,transparent 66%); transform:translateX(-100%); animation:card-skeleton-sweep 1.8s ease-in-out infinite; content:""; pointer-events:none; }
.loading-skeleton:nth-child(3n + 2)::after { animation-delay:.12s; }
.loading-skeleton:nth-child(3n)::after { animation-delay:.24s; }
.sk-block { display:block; flex-shrink:0; width:100%; height:13px; border:0; border-radius:6px; background:color-mix(in srgb,var(--text) 9%,var(--surface-soft)); }
.sk-copy { display:grid; flex:1; min-width:0; gap:8px; }
.sk-name { width:72%; height:16px; }
.sk-handle { width:47%; height:11px; opacity:.65; }
.sk-avatar { width:40px; height:40px; border-radius:50%; }
.sk-label { width:64px; height:11px; opacity:.65; }
.sk-total { width:66px; height:19px; border-radius:5px; }
.sk-button { width:44px; height:29px; border-radius:7px; }
.sk-date { width:88px; height:11px; opacity:.65; }
.sk-pet { position:relative; min-width:0; aspect-ratio:1; padding:12%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7%; overflow:hidden; background:var(--surface-soft); border:1px solid var(--border); border-radius:9px; }
.sk-pet-art { width:62%; height:52%; border-radius:35% 35% 28% 28%; opacity:.8; }
.sk-pet-name { width:85%; height:9%; border-radius:4px; }
.sk-pet-value { width:48%; height:8%; border-radius:4px; opacity:.6; }
.sk-offer > header { display:flex; align-items:center; gap:10px; }
.sk-offer .sk-copy { max-width:220px; }
.sk-offer .sk-button { margin-left:auto; }
.sk-offer .offer-card-sides > section > header { display:flex; align-items:center; justify-content:space-between; }
.sk-player .player-card-rank { width:33px; height:24px; padding:0; }
.sk-player .player-card-scanned { width:47px; height:10px; margin-top:3px; }
.sk-player .player-card-avatar { background:color-mix(in srgb,var(--text) 8%,var(--surface-soft)); }
.sk-player .player-card-identity { gap:6px; }
.sk-player .player-card-identity > span { justify-self:center; }
.sk-player .player-card-value { width:80%; height:43px; padding:0; background:color-mix(in srgb,var(--accent) 14%,var(--surface-soft)); border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border)); }
.sk-trade .sk-time { width:88px; height:12px; margin:0 auto; }
.sk-trade .trade-pane-user { flex:1; }
.sk-trade .trade-connector { width:32px; height:32px; border-radius:50%; opacity:.65; }
.sk-egg .catalog-art { display:grid; place-items:center; }
.sk-egg-art { width:48%; height:64%; border-radius:50% 50% 43% 43%; }
.sk-kind { position:absolute; top:10px; left:10px; width:43px; height:20px; border-radius:6px; }
.sk-egg .catalog-card-body { display:grid; gap:10px; }
.sk-egg .egg-price { display:flex; align-items:center; gap:7px; }
.sk-currency { width:23px; height:23px; border-radius:50%; }
.sk-arrow { width:18px; height:12px; }
.sk-bounty-art { width:58%; height:64%; min-height:85px; border-radius:32%; }
.sk-small-art { width:68%; height:68%; border-radius:50%; }
.sk-bounty-copy { display:flex; flex-direction:column; justify-content:center; gap:20px; }
.sk-bounty-copy .bounty-date-line { display:flex; align-items:center; gap:12px; }
.sk-title { width:78%; height:32px; border-radius:8px; }
.sk-countdown { display:flex; gap:10px; }
.sk-countdown > span { width:57px; height:60px; border-radius:10px; }
.sk-bounty-copy .bounty-featured-meta > div { display:grid; gap:9px; }
.sk-bounty-copy .bounty-featured-meta .sk-name { width:120px; max-width:100%; }
.sk-bounty .bounty-card-body { display:grid; align-content:center; gap:14px; }
.sk-bounty .bounty-date-line { display:flex; justify-content:space-between; gap:8px; }
.sk-bounty .sk-date { width:62px; }
.sk-bounty-meta { display:grid; grid-template-columns:54px minmax(0,1fr); gap:9px 12px; }
.sk-bounty-meta .sk-label { width:40px; }
@keyframes card-skeleton-sweep { to { transform:translateX(100%); } }
@media (max-width:640px) { .sk-pet { padding:10%; } .sk-bounty-copy { gap:16px; } .sk-title { height:25px; } }
@media (prefers-reduced-motion:reduce) { .loading-skeleton::after { animation:none; display:none; } }

.egg-grid.is-updating:has(.loading-skeleton) { opacity:1; transform:none; }
