@tailwind base;@tailwind components;@tailwind utilities;@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,400;1,600;1,700&family=Outfit:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&display=swap");:root{--bg:#080808;--bg-alt:#0f0f0f;--bg-deep:#050505;--bg-card:rgba(226,232,240,.022);--bg-card-hov:rgba(226,232,240,.042);--accent:#e2e8f0;--text:#f0ede8;--text-dim:hsla(38,21%,93%,.72);--text-muted:hsla(38,21%,93%,.48);--text-ghost:hsla(38,21%,93%,.05);--border:rgba(226,232,240,.08);--border-mid:rgba(226,232,240,.14);--border-hi:rgba(226,232,240,.26);--success:#86efac;--blue:#93c5fd;--violet:#c4b5fd;--red:hsla(0,91%,71%,.75);--font-head:"Playfair Display",Georgia,serif;--font-body:"Outfit","DM Sans",sans-serif;--font-mono:"JetBrains Mono","Courier New",monospace}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-weight:300;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-head);font-weight:700;line-height:1.1;letter-spacing:-.01em;color:var(--text)}a{color:inherit}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--border-hi)}::selection{background:rgba(226,232,240,.15);color:var(--text)}:focus-visible{outline:1px solid var(--border-hi);outline-offset:2px;border-radius:4px}@keyframes pp-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pp-spin-r{0%{transform:rotate(0deg)}to{transform:rotate(-1turn)}}@keyframes pp-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.75)}}@keyframes pp-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pp-ping{0%{transform:scale(1);opacity:.5}80%,to{transform:scale(2);opacity:0}}@keyframes pp-drift{0%,to{transform:translateY(0) translateX(0)}33%{transform:translateY(-18px) translateX(8px)}66%{transform:translateY(10px) translateX(-6px)}}