/* css/style.css */
body {
    background-color: #FAFAFA;
    color: #1A1A1A;
    overflow-x: hidden;
}

html, body { height: 100%; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }

.noise-overlay {
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    pointer-events: none; z-index: 50; opacity: 0.04;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='1'/%3E%3C/svg%3E");
}

.blob {
    position: absolute; border-radius: 50%;
    filter: blur(80px); z-index: -1; opacity: 0.6;
    animation: float 10s infinite alternate;
}

@keyframes float {
    0% { transform: translate(0, 0) scale(1); }
    100% { transform: translate(20px, -20px) scale(1.05); }
}

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #FAFAFA; }
::-webkit-scrollbar-thumb { background: #8B5E3C; border-radius: 4px; }

.external-link { text-decoration: underline; }
.external-link i { margin-left: 0.2em; font-size: 0.9em; }