/* Purged Tailwind CSS + Fonts — replaces Tailwind CDN (267KB), Google Fonts CSS, FontAwesome CSS */

/* === INTER FONT (latin-ext + latin) === */
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* === FONT AWESOME (with font-display:swap fix) === */
@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:swap;src:url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/webfonts/fa-solid-900.woff2) format("woff2")}
@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:swap;src:url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/webfonts/fa-brands-400.woff2) format("woff2")}
.fa,.fas,.fa-solid{font-family:"Font Awesome 6 Free";font-weight:900;font-style:normal;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;text-rendering:auto;line-height:1}
.fab,.fa-brands{font-family:"Font Awesome 6 Brands";font-weight:400;font-style:normal;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;text-rendering:auto;line-height:1}
.fa-bars::before{content:"\f0c9"}.fa-cogs::before{content:"\f085"}.fa-shield-halved::before{content:"\f3ed"}.fa-headset::before{content:"\f590"}.fa-lightbulb::before{content:"\f0eb"}.fa-gamepad::before{content:"\f11b"}.fa-globe::before{content:"\f0ac"}.fa-server::before{content:"\f233"}.fa-discord::before{content:"\f392"}.fa-sign-in-alt::before{content:"\f2f6"}.fa-envelope::before{content:"\f0e0"}.fa-star::before{content:"\f005"}.fa-plus::before{content:"\f067"}

/* === RESET (Tailwind Preflight) === */
*,::after,::before{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}
html{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;line-height:1.5}
body{margin:0;line-height:inherit}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
b,strong{font-weight:bolder}
button,input,select,textarea{font-family:inherit;font-size:100%;line-height:inherit;color:inherit;margin:0;padding:0}
button{cursor:pointer;background-color:transparent;background-image:none}
img,svg,video{display:block}
img,video{max-width:100%;height:auto}
*,::before,::after{--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}
ul,ol{list-style:none;margin:0;padding:0}
p{margin:0}
hr{height:0;color:inherit;border-top-width:1px}

/* === LAYOUT === */
.container{width:100%;margin-left:auto;margin-right:auto}
@media(min-width:640px){.container{max-width:640px}}
@media(min-width:768px){.container{max-width:768px}}
@media(min-width:1024px){.container{max-width:1024px}}
@media(min-width:1280px){.container{max-width:1280px}}

/* === POSITIONING === */
.fixed{position:fixed}
.relative{position:relative}
.absolute{position:absolute}
.top-0{top:0}
.left-0{left:0}
.right-0{right:0}
.z-50{z-index:50}

/* === DISPLAY === */
.block{display:block}
.flex{display:flex}
.grid{display:grid}
.inline-flex{display:inline-flex}
.hidden{display:none}

/* === FLEX === */
.flex-col{flex-direction:column}
.flex-grow{flex-grow:1}
.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}

/* === GRID === */
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.gap-3{gap:.75rem}
.gap-8{gap:2rem}

/* === SIZING === */
.w-full{width:100%}
.h-12{height:3rem}
.min-h-screen{min-height:100vh}
.max-w-xs{max-width:20rem}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-4xl{max-width:56rem}
.max-w-none{max-width:none}

/* === SPACING === */
.mx-auto{margin-left:auto;margin-right:auto}
.mb-2{margin-bottom:.5rem}
.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.mb-12{margin-bottom:3rem}
.ml-4{margin-left:1rem}
.mr-2{margin-right:.5rem}
.mt-2{margin-top:.5rem}
.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}
.mt-8{margin-top:2rem}
.mt-16{margin-top:4rem}
.p-3{padding:.75rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.pt-6{padding-top:1.5rem}
.pt-20{padding-top:5rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.px-8{padding-left:2rem;padding-right:2rem}
.px-10{padding-left:2.5rem;padding-right:2.5rem}
.py-2{padding-top:.5rem;padding-bottom:.5rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-5{padding-top:1.25rem;padding-bottom:1.25rem}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.py-8{padding-top:2rem;padding-bottom:2rem}
.py-16{padding-top:4rem;padding-bottom:4rem}
.py-20{padding-top:5rem;padding-bottom:5rem}

/* === SPACE BETWEEN === */
.space-x-4>:not([hidden])~:not([hidden]){margin-left:1rem}
.space-x-8>:not([hidden])~:not([hidden]){margin-left:2rem}
.space-y-1>:not([hidden])~:not([hidden]){margin-top:.25rem}
.space-y-2>:not([hidden])~:not([hidden]){margin-top:.5rem}
.space-y-4>:not([hidden])~:not([hidden]){margin-top:1rem}

/* === TYPOGRAPHY === */
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-4xl{font-size:2.25rem;line-height:2.5rem}
.text-5xl{font-size:3rem;line-height:1}
.font-bold{font-weight:700}
.font-extrabold{font-weight:800}
.font-semibold{font-weight:600}
.uppercase{text-transform:uppercase}
.italic{font-style:italic}
.underline{text-decoration:underline}
.leading-tight{line-height:1.25}
.tracking-wider{letter-spacing:.05em}
.text-left{text-align:left}
.text-center{text-align:center}

/* === COLORS === */
.text-white{color:#fff}
.text-gray-300{color:#d1d5db}
.text-gray-400{color:#b0b8c1} /* Boosted for WCAG AA contrast */
.text-gray-500{color:#8b95a1} /* Boosted for contrast */
.text-blue-400{color:#60a5fa}
.text-blue-500{color:#3b82f6}
.text-green-400{color:#34d399}
.text-green-500{color:#10b981}
.text-purple-400{color:#a78bfa}
.text-purple-500{color:#8b5cf6}
.text-indigo-400{color:#818cf8}
.text-indigo-500{color:#6366f1}
.text-red-300{color:#fca5a5}

/* === BACKGROUNDS === */
.bg-\[\#0d1117\]{background-color:#0d1117}
.bg-\[\#161b22\]{background-color:#161b22}
.bg-black{background-color:#000}
.bg-opacity-20{--tw-bg-opacity:.2}
.bg-opacity-30{--tw-bg-opacity:.3}
.bg-white\/5{background-color:rgba(255,255,255,.05)}
.bg-red-900{background-color:#7f1d1d}

/* === BORDERS === */
.border{border-width:1px}
.border-t{border-top-width:1px}
.border-gray-700{border-color:#374151}
.border-gray-800{border-color:#1f2937}
.border-red-500{border-color:#ef4444}
.border-white\/20{border-color:rgba(255,255,255,.2)}
.rounded-lg{border-radius:.5rem}
.rounded-md{border-radius:.375rem}
.rounded-xl{border-radius:.75rem}

/* === EFFECTS === */
.opacity-0{opacity:0}
.overflow-hidden{overflow:hidden}
.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur)}
.transform{transform:translate(var(--tw-translate-x,0),var(--tw-translate-y,0)) rotate(var(--tw-rotate,0)) skewX(var(--tw-skew-x,0)) skewY(var(--tw-skew-y,0)) scaleX(var(--tw-scale-x,1)) scaleY(var(--tw-scale-y,1))}
.-translate-y-4{--tw-translate-y:-1rem;transform:translate(var(--tw-translate-x,0),var(--tw-translate-y)) rotate(var(--tw-rotate,0)) skewX(var(--tw-skew-x,0)) skewY(var(--tw-skew-y,0)) scaleX(var(--tw-scale-x,1)) scaleY(var(--tw-scale-y,1))}

/* === TRANSITIONS === */
.transition{transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}
.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}
.duration-300{transition-duration:300ms}

/* === PROSE (minimal) === */
.prose{color:#d1d5db;max-width:65ch;line-height:1.75}
.prose-invert{--tw-prose-body:#d1d5db;--tw-prose-headings:#fff;color:#d1d5db}

/* === HOVER STATES === */
.hover\:text-white:hover{color:#fff}
.hover\:text-blue-300:hover{color:#93c5fd}
.hover\:text-blue-400:hover{color:#60a5fa}
.hover\:bg-gray-700:hover{background-color:#374151}
.hover\:bg-white\/10:hover{background-color:rgba(255,255,255,.1)}
.hover\:border-white\/40:hover{border-color:rgba(255,255,255,.4)}

/* === FOCUS === */
.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}

/* === RESPONSIVE: sm (640px) === */
@media(min-width:640px){
    .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
    .sm\:flex-row{flex-direction:row}
    .sm\:space-y-0>:not([hidden])~:not([hidden]){margin-top:0}
    .sm\:space-x-6>:not([hidden])~:not([hidden]){margin-left:1.5rem}
}

/* === RESPONSIVE: md (768px) === */
@media(min-width:768px){
    .md\:flex{display:flex}
    .md\:hidden{display:none}
    .md\:inline-flex{display:inline-flex}
    .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
    .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
    .md\:text-xl{font-size:1.25rem;line-height:1.75rem}
    .md\:text-3xl{font-size:1.875rem;line-height:2.25rem}
    .md\:text-4xl{font-size:2.25rem;line-height:2.5rem}
    .md\:text-6xl{font-size:3.75rem;line-height:1}
}

/* === RESPONSIVE: lg (1024px) === */
@media(min-width:1024px){
    .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
    .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
}

