/* LaunchSpark 공용 컴포넌트 스타일 (Tailwind CDN 보완) */
:root { color-scheme: dark; }
html, body { background:#0d1426; color:#fff; -webkit-font-smoothing:antialiased;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif; }

.ls-card { background:#161e35; border-radius:1rem; border:1px solid rgba(255,255,255,.06);
  box-shadow:0 10px 30px rgba(0,0,0,.25); }
.ls-btn-coral { background:#ff5757; color:#fff; font-weight:600; border-radius:.75rem;
  padding:.75rem 1.5rem; transition:.15s; }
.ls-btn-coral:hover { filter:brightness(1.1); }
.ls-btn-coral:disabled { opacity:.4; cursor:not-allowed; }
.ls-btn-primary { background:#a855f7; color:#fff; font-weight:600; border-radius:.75rem;
  padding:.75rem 1.5rem; transition:.15s; }
.ls-btn-primary:hover { filter:brightness(1.1); }
.ls-btn-primary:disabled { opacity:.4; cursor:not-allowed; }
.ls-btn-ghost { border:1px solid rgba(255,255,255,.15); color:#a3aec5; border-radius:.75rem;
  padding:.55rem 1.15rem; transition:.15s; background:transparent; }
.ls-btn-ghost:hover { border-color:rgba(255,255,255,.4); color:#fff; }
.ls-chip { display:inline-flex; align-items:center; gap:.375rem; font-size:.75rem; font-weight:500;
  border-radius:999px; padding:.25rem .625rem; background:rgba(255,255,255,.05); color:#a3aec5; }
.ls-label { font-size:.75rem; text-transform:uppercase; letter-spacing:.05em; color:#6b7592; }

.progress-track { height:.5rem; width:100%; overflow:hidden; border-radius:999px; background:rgba(255,255,255,.1); }
.progress-fill { height:100%; border-radius:999px; transition:width .5s ease; }

@keyframes pulse-dot { 0%,100%{opacity:1} 50%{opacity:.35} }
.pulse-dot { animation:pulse-dot 1.4s ease-in-out infinite; }
@keyframes fade-in { from{opacity:0} to{opacity:1} }
.fade-in { animation:fade-in .2s ease-in-out; }

::-webkit-scrollbar { width:10px; height:10px; }
::-webkit-scrollbar-thumb { background:#2a3350; border-radius:8px; }
::-webkit-scrollbar-track { background:transparent; }

input, textarea { color:#fff; }
