@keyframes skel-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.ide-skel__pill,.ide-skel__icon,.ide-skel__line,.ide-skel__tab,.ide-skel__code-line,.ide-skel__status,.code-skel__line{background:linear-gradient(90deg, color-mix(in srgb, var(--fg-base) 6%, transparent) 0%, color-mix(in srgb, var(--fg-base) 12%, transparent) 50%, color-mix(in srgb, var(--fg-base) 6%, transparent) 100%);border-radius:var(--radius-xs);background-size:200% 100%;animation:1.8s ease-in-out .2s infinite skel-shimmer}@media (prefers-reduced-motion:reduce){.ide-skel__pill,.ide-skel__icon,.ide-skel__line,.ide-skel__tab,.ide-skel__code-line,.ide-skel__status,.code-skel__line{background:color-mix(in srgb, var(--fg-base) 8%, transparent);animation:none}}.ide-skel{gap:var(--space-2);height:100%;padding:var(--space-2) var(--space-3);opacity:0;flex-direction:column;animation:.3s .2s forwards skel-fade-in;display:flex}@keyframes skel-fade-in{to{opacity:1}}.ide-skel__toolbar{align-items:center;gap:var(--space-3);height:40px;padding:0 var(--space-3);background:color-mix(in srgb, var(--bg-elevated) 50%, transparent);border-radius:var(--radius-md);display:flex}.ide-skel__pill{height:28px}.ide-skel__spacer{flex:1}.ide-skel__body{gap:var(--space-2);flex:1;min-height:0;display:flex}.ide-skel__activity{align-items:center;gap:var(--space-3);width:44px;padding-top:var(--space-3);flex-direction:column;display:flex}.ide-skel__icon{border-radius:var(--radius-sm);width:24px;height:24px}.ide-skel__sidebar{gap:var(--space-3);width:360px;padding:var(--space-4);background:color-mix(in srgb, var(--bg-elevated) 40%, transparent);border-radius:var(--radius-md);flex-direction:column;display:flex}.ide-skel__line{height:14px}.ide-skel__editor{background:color-mix(in srgb, var(--bg-elevated) 30%, transparent);border-radius:var(--radius-md);flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.ide-skel__tab-bar{background:color-mix(in srgb, var(--bg-elevated) 50%, transparent);border-bottom:1px solid var(--border-subtle);height:32px;padding:6px 12px}.ide-skel__tab{width:140px;height:20px}.ide-skel__code{padding:var(--space-4) var(--space-5);flex-direction:column;flex:1;gap:8px;display:flex}.ide-skel__code-line{height:12px}.ide-skel__loading-text{bottom:var(--space-6);font-family:var(--font-mono);font-size:var(--pg-fs-body);color:var(--fg-subtle);opacity:0;animation:.3s 1s forwards skel-fade-in;position:absolute;left:50%;transform:translate(-50%)}.ide-skel__status{height:22px}.code-skel{padding:var(--space-4) var(--space-5);flex-direction:column;gap:8px;height:100%;display:flex;position:relative}.code-skel__line{height:12px}.code-skel__text{bottom:var(--space-6);font-family:var(--font-mono);font-size:var(--pg-fs-body);color:var(--fg-subtle);opacity:0;animation:.3s .8s forwards skel-fade-in;position:absolute;left:50%;transform:translate(-50%)}@media (max-width:1279px){.ide-skel__activity,.ide-skel__sidebar{display:none}}.toast-container{bottom:var(--space-4);right:var(--space-4);z-index:200;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}@media (max-width:640px){.toast-container{left:var(--space-4);right:var(--space-4)}}.toast{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--bg-elevated);border:1px solid var(--border-base);border-radius:var(--radius-md);box-shadow:0 4px 16px color-mix(in oklch, var(--fg-base) 12%, transparent);font-family:var(--font-mono);font-size:var(--pg-fs-body);color:var(--fg-base);cursor:pointer;pointer-events:auto;max-width:360px;animation:.3s cubic-bezier(.22,1,.36,1) toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.toast--success{border-color:color-mix(in oklch, var(--ok) 40%, var(--border-base))}.toast--error{border-color:color-mix(in oklch, var(--danger) 40%, var(--border-base))}.toast__icon{flex-shrink:0;font-size:14px}.toast--success .toast__icon{color:var(--ok)}.toast--error .toast__icon{color:var(--danger)}.toast--info .toast__icon{color:var(--accent)}.toast__message{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}
