:root{--fp-bg:#0f172a;--fp-bg-soft:#1e293b;--fp-text:#e2e8f0;--fp-muted:#94a3b8;--fp-accent:#38bdf8;--fp-good:#22c55e;--fp-bad:#ef4444}html,body{font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif}.fp-sidebar a.is-active{background:rgba(255,255,255,0.08);color:#fff}.fp-public{background:#fafafa;color:#111827}.fp-input{@apply w-full rounded-lg border border-slate-300 px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-sky-400}
.fp-btn{@apply inline-flex items-center justify-center rounded-lg bg-sky-500 px-4 py-2 text-sm font-medium text-white hover:bg-sky-600 transition}
.fp-btn-ghost{@apply inline-flex items-center justify-center rounded-lg border border-slate-300 px-4 py-2 text-sm font-medium text-slate-700 hover:bg-slate-100 transition}
.fp-card{@apply rounded-xl bg-white shadow-sm border border-slate-200 p-5}.fp-flash{@apply rounded-lg px-4 py-3 text-sm mb-3}
.fp-flash.success{@apply bg-emerald-50 text-emerald-700 border border-emerald-200}
.fp-flash.error{@apply bg-rose-50 text-rose-700 border border-rose-200}
.fp-flash.warning{@apply bg-amber-50 text-amber-700 border border-amber-200}
.fp-flash.info{@apply bg-sky-50 text-sky-700 border border-sky-200}