@tailwind base;@tailwind components;@tailwind utilities;:root{--bg-app:#0f0f17;--bg-card:rgba(19,24,45,.9);--bg-card-soft:hsla(0,0%,100%,.06);--line:hsla(0,0%,100%,.14);--line-soft:hsla(0,0%,100%,.2);--text-main:#e6eaf2;--text-secondary:#c0cae6;--text-label:#e6ecff;--text-muted:#98a5cd;--input-placeholder:#6f7aa3;--accent:#5b8cff;--accent-hover:#7c5bff;--ok:#22c55e}body{background:radial-gradient(1200px 700px at 50% -180px,#23253a 0,var(--bg-app) 55%);color:var(--text-main);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.wizard-frame,.wizard-shell{@apply w-full max-w-5xl space-y-6}.card{background:var(--bg-card);border:1px solid var(--line);border-radius:12px;padding:24px;box-shadow:0 18px 42px rgba(0,0,0,.38);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.btn-primary{@apply inline-flex items-center justify-center text-sm text-white disabled:opacity-50 disabled:cursor-not-allowed;background:linear-gradient(135deg,#5b8cff,#7c5bff);border-radius:8px;padding:8px 16px;font-weight:500;border:1px solid hsla(0,0%,100%,.22);box-shadow:0 10px 24px rgba(65,92,220,.45);transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}.btn-primary:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 14px 28px rgba(65,92,220,.45)}.btn-secondary{@apply inline-flex items-center justify-center text-sm disabled:opacity-50 disabled:cursor-not-allowed;color:#eef2ff;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;padding:8px 16px;font-weight:500;box-shadow:0 8px 20px rgba(0,0,0,.25);transition:transform .18s ease,border-color .18s ease,background .18s ease}.btn-secondary:hover:not(:disabled){transform:translateY(-1px);background:#27314d;border-color:#6474aa}.btn-secondary.available{color:#fff;background:linear-gradient(135deg,rgba(28,44,88,.95),rgba(52,73,140,.9));border-color:rgba(117,145,255,.75);box-shadow:inset 0 0 0 1px rgba(117,145,255,.22),0 8px 20px rgba(33,63,155,.35)}.btn-secondary.available:hover:not(:disabled){background:linear-gradient(135deg,#2f4f9f,#405fb8);border-color:rgba(155,176,255,.95)}.toggle-button{background:hsla(0,0%,100%,.06);border:1px solid hsla(0,0%,100%,.2);color:#e6ecff;border-radius:8px;padding:8px 16px;font-weight:500;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.toggle-button:hover:not(:disabled){background:hsla(0,0%,100%,.12)}.toggle-button.active,.toggle-button[data-active=true]{background:linear-gradient(135deg,#5b8cff,#7c5bff);border:1px solid rgba(124,91,255,.6);color:#fff;box-shadow:inset 0 0 0 1px rgba(124,91,255,.25)}.category-chip{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);color:#eef2ff;border-radius:9999px;padding:4px 12px;font-size:12px;line-height:1.2;transition:background .18s ease,border-color .18s ease,transform .18s ease}.category-chip:hover{transform:translateY(-1px);background:hsla(0,0%,100%,.12)}.category-chip.selected{background:linear-gradient(135deg,#5b8cff,#7c5bff);color:#fff;border-color:rgba(196,209,255,.7);box-shadow:inset 0 0 0 1px rgba(173,190,255,.28)}.status-panel{@apply rounded-xl p-3 text-xs;background:rgba(25,30,55,.75);border:1px solid hsla(0,0%,100%,.14)}.status-badges{@apply flex flex-wrap gap-2}.status-badge{@apply inline-flex items-center rounded-full px-2.5 py-1 text-[11px] font-semibold;border:1px solid var(--line-soft);background:rgba(27,31,49,.9);color:#c9d0ee}.status-badge.ok{border-color:rgba(74,222,128,.45);color:#4ade80;background:rgba(18,61,37,.55)}.status-badge.warn{border-color:rgba(251,191,36,.45);color:#fbbf24;background:rgba(73,61,18,.5)}.install-buttons{@apply space-y-3}input,select{color:#fff;background:rgba(7,11,24,.85);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;padding:8px 12px;margin-bottom:14px}input::placeholder{color:var(--input-placeholder)}input:focus,select:focus{outline:none;border-color:rgba(117,145,255,.95);box-shadow:0 0 0 2px rgba(91,140,255,.28)}label{color:var(--text-label);margin-bottom:6px}.wizard-frame>*+*{margin-top:24px}.card>h2{color:#fff;margin-bottom:16px}.card>h2,.wizard-frame h1{font-weight:600}.text-slate-400{color:#a9b1c7}.text-slate-500{color:#7f8bb3}.text-slate-300{color:#cfd6ea}.text-indigo-300{color:#60a5fa}@media (max-width:640px){.wizard-frame{@apply max-w-full}.card{border-radius:14px}}