@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500&family=VT323&family=Caveat:wght@500;700&display=swap";:root{--bg-primary:#090412;--bg-secondary:#120924;--bg-tertiary:#1a0c32;--bg-glass:#090412f0;--bg-card:#160a2d;--text-main:#fff;--text-muted:#dfd5f0;--text-subtle:#8e7ea5;--border-color:#2b174a;--border-subtle:#9146ff4d;--border-hover:#9146ff;--border-focus:#9146ff;--accent-primary:#9146ff;--accent-hover:#a970ff;--accent-light:#d8b3ff;--accent-glow:#9146ff33;--accent-cyan:#38bdf8;--accent-emerald:#34d399;--accent-amber:#fbbf24;--badge-bg:#9146ff29;--badge-text:#d8b3ff;--badge-border:#9146ff;--card-shadow:0 12px 32px #000000d9;--glass-shadow:0 8px 32px #000000a6;--font-sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-heading:"IBM Plex Sans", var(--font-sans);--font-pixel:"VT323", monospace;--font-script:"Caveat", cursive;--radius-sm:0px;--radius-md:4px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s ease}[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f8f6fb;--bg-tertiary:#efeaf7;--bg-glass:#fffffff5;--bg-card:#fff;--text-main:#140826;--text-muted:#4e4066;--text-subtle:#8978a3;--border-color:#e2d6f2;--border-subtle:#9146ff38;--border-hover:#9146ff;--border-focus:#9146ff;--accent-primary:#9146ff;--accent-hover:#5c16c5;--accent-light:#9146ff;--accent-glow:#9146ff26;--accent-cyan:#0284c7;--accent-emerald:#059669;--accent-amber:#d97706;--badge-bg:#9146ff1a;--badge-text:#5c16c5;--badge-border:#9146ff;--card-shadow:0 12px 30px #9146ff14;--glass-shadow:0 8px 30px #9146ff0d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-main);min-height:100vh;transition:background-color var(--transition-normal), color var(--transition-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}.app-container{flex-direction:column;max-width:1240px;min-height:100vh;margin:0 auto;padding:0 1.75rem;display:flex}.font-pixel{letter-spacing:.08em;font-family:var(--font-pixel)!important}.font-script{font-family:var(--font-script)!important}.pixel-tag{font-family:var(--font-pixel);text-transform:uppercase;letter-spacing:.08em;color:var(--text-main);border:1px solid var(--border-color);background:var(--bg-secondary);margin-bottom:1.25rem;padding:.25rem .75rem;font-size:.95rem;display:inline-block}.pixel-chip{border:1px solid var(--border-color);font-family:var(--font-pixel);text-transform:uppercase;letter-spacing:.06em;color:var(--text-main);background:var(--bg-secondary);transition:all var(--transition-fast);padding:.35rem .75rem;font-size:.9rem}.pixel-chip:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.dunbar-win{border:1px solid var(--border-color);background:var(--bg-card);transition:transform var(--transition-normal), box-shadow var(--transition-normal);overflow:hidden}.dunbar-win:hover{box-shadow:var(--card-shadow)}.dunbar-win-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);font-family:var(--font-pixel);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.85rem;display:flex}.win-dots{gap:5px;display:flex}.win-dot{border:1px solid var(--border-color);border-radius:50%;width:8px;height:8px}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-main);letter-spacing:-.02em;font-weight:700;line-height:1.2}h1{font-size:clamp(2.2rem,5vw,3.6rem)}h2{font-size:clamp(1.6rem,3.5vw,2.4rem)}h3{font-size:clamp(1.2rem,2.5vw,1.5rem)}p{color:var(--text-muted);font-size:1rem}a{color:var(--text-main);text-decoration:underline;-webkit-text-decoration-color:var(--border-subtle);text-decoration-color:var(--border-subtle);text-underline-offset:3px;transition:all var(--transition-fast)}a:hover{-webkit-text-decoration-color:var(--accent-primary);text-decoration-color:var(--accent-primary)}button{font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;outline:none}.section{border-bottom:1px solid var(--border-color);padding:4.5rem 0}.section:last-of-type{border-bottom:none}.section-header{margin-bottom:2.5rem}.section-tag{font-family:var(--font-pixel);color:var(--text-main);background:var(--bg-secondary);border:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:.4rem;margin-bottom:.75rem;padding:.25rem .75rem;font-size:.9rem;font-weight:500;display:inline-flex}.section-title{margin-bottom:.5rem}.section-subtitle{color:var(--text-muted);max-width:650px;font-size:1.05rem}.btn{font-family:var(--font-sans);transition:all var(--transition-fast);border:1px solid var(--border-color);justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.4rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.btn-primary:hover{background:var(--accent-hover);color:#fff;border-color:var(--accent-hover);transform:translateY(-1px)}.btn-secondary{background:var(--bg-secondary);color:var(--text-main);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--text-main);color:var(--bg-primary)}.btn-outline{color:var(--text-main);border:1px solid var(--border-color);background:0 0}.btn-outline:hover{background:var(--text-main);color:var(--bg-primary)}.btn-sm{padding:.4rem .85rem;font-size:.825rem}.modal-backdrop{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000c;justify-content:center;align-items:center;padding:1.5rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);width:100%;max-width:680px;max-height:90vh;box-shadow:var(--card-shadow);padding:2rem;animation:.2s cubic-bezier(.16,1,.3,1) scaleUp;position:relative;overflow-y:auto}.cat-badge{font-family:var(--font-pixel);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--border-color);padding:.2rem .55rem;font-size:.85rem;font-weight:500}.cat-project,.cat-blog,.cat-tutorial,.cat-link{background:var(--bg-secondary);color:var(--text-main)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}
