:root {
    --bg-color: #030303;
    --text-color: #e0e0e0;
    --red-glow: #b30000;
    --red-glow-bright: #d10024;
}

* { margin: 0; padding: 0; box-sizing: border-box; cursor: none; }
body { background-color: var(--bg-color); color: var(--text-color); font-family: 'Helvetica Neue', Arial, sans-serif; overflow-x: hidden; }

/* YÜKLEME EKRANI & İMLEÇ */
.loader { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background-color: var(--bg-color); z-index: 999999; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.loader-counter { font-size: clamp(4rem, 8vw, 8rem); font-weight: 900; color: var(--text-color); margin-bottom: 2rem; }
.progress-wrap { width: min(80vw, 250px); height: 2px; background-color: rgba(255, 255, 255, 0.05); overflow: hidden; }
.progress-bar { width: 0%; height: 100%; background-color: var(--red-glow-bright); }

.cursor-dot, .cursor-ring { position: fixed; top: 0; left: 0; transform: translate(-50%, -50%); border-radius: 50%; pointer-events: none; z-index: 9999999; }
.cursor-dot { width: 6px; height: 6px; background-color: var(--red-glow-bright); }
.cursor-ring { width: 40px; height: 40px; border: 1px solid rgba(179,0,0,0.5); transition: all 0.3s ease; }
.cursor-ring.active { width: 70px; height: 70px; background-color: rgba(179,0,0,0.1); }

/* NAVİGASYON (TIKLAMA ÖNCELİKLİ) */
.fixed-nav { position: fixed; top: 0; left: 0; width: 100%; padding: 2.5rem 4rem; display: flex; justify-content: space-between; z-index: 99900; mix-blend-mode: difference; color: #fff; pointer-events: none; }
.logo { font-size: 1.1rem; font-weight: 900; letter-spacing: 3px; pointer-events: auto; }
.menu-btn { font-size: 1.1rem; font-weight: 900; letter-spacing: 3px; pointer-events: auto; cursor: none; }

/* CANVAS VE SCROLL HİYERARŞİSİ */
#particle-canvas { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: 1; pointer-events: auto; }
#smooth-wrapper { position: relative; z-index: 10; pointer-events: none; }
.vision-section, .projects-section, .footer-section { pointer-events: auto; }
.section { min-height: 100vh; display: flex; align-items: center; position: relative; padding: 15vh 0; }
.hero-section { min-height: 120vh; }
.reveal-text { font-size: clamp(1.8rem, 4vw, 3.5rem); line-height: 1.5; font-weight: 700; mix-blend-mode: difference; color: #fff; }

/* PROJE KARTLARI */
.project-showcase { min-height: clamp(60vh, 80vh, 100vh); display: flex; flex-direction: column; justify-content: center; margin-bottom: 5rem; }
.project-info { max-width: 650px; }
.project-info.align-right { margin-left: auto; text-align: right; }
.project-num { font-size: 1.5rem; color: var(--red-glow); font-weight: 900; margin-bottom: 1rem; letter-spacing: 4px; }
.project-title { font-size: clamp(3rem, 7vw, 5rem); font-weight: 900; line-height: 1; margin-bottom: 1.5rem; color: #fff; mix-blend-mode: difference; display: inline-block; }
.project-desc { font-size: clamp(1.1rem, 2vw, 1.4rem); color: #888; line-height: 1.6; }
.project-line { width: 0px; height: 3px; background-color: var(--red-glow); margin-top: 2rem; }
.project-line.right { margin-left: auto; }

.footer-logo { font-size: clamp(1.5rem, 4vw, 2rem); font-weight: 900; letter-spacing: 5px; color: #fff; mix-blend-mode: difference; }
.footer-text { color: #666; letter-spacing: 2px; }

/* KİNETİK MENÜ YENİDEN YAPILANDIRMASI */
#physics-menu-overlay { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background-color: rgba(3,3,3,0.95); backdrop-filter: blur(10px); z-index: 999950; opacity: 0; pointer-events: none; transition: opacity 0.5s ease; }
#physics-menu-overlay.active { opacity: 1; pointer-events: auto; }
#physics-canvas { width: 100%; height: 100%; pointer-events: auto; }
#close-menu { position: absolute; top: 3rem; right: 4rem; background: transparent; border: 2px solid var(--red-glow-bright); padding: 10px 20px; color: var(--red-glow-bright); font-size: 1rem; font-weight: 900; letter-spacing: 3px; z-index: 999960; pointer-events: auto; transition: 0.3s; }
#close-menu:hover { background-color: var(--red-glow-bright); color: #000; }

/* SENTINEL TERMİNALİ (TAMAMEN GİZLİ VE AGRESİF STİL) */
#sentinel-terminal { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(0.9); width: 80vw; max-width: 700px; height: 60vh; background-color: rgba(5,5,5,0.95); backdrop-filter: blur(10px); border: 1px solid var(--red-glow-bright); box-shadow: 0 0 50px rgba(209, 0, 36, 0.3); z-index: 999900; display: flex; flex-direction: column; font-family: 'Courier New', Courier, monospace; opacity: 0; pointer-events: none; transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
#sentinel-terminal.active { opacity: 1; transform: translate(-50%, -50%) scale(1); pointer-events: auto; }
.terminal-header { background-color: var(--red-glow-bright); color: #000; padding: 10px 20px; display: flex; justify-content: space-between; font-weight: 900; letter-spacing: 2px; }
.terminal-body { flex-grow: 1; padding: 20px; overflow-y: auto; color: #0f0; /* Yeşil hacker text */ }
.terminal-body p { margin-bottom: 8px; }
.term-error { color: #f00 !important; } .term-success { color: #0f0 !important; }
.terminal-input-line { display: flex; padding: 15px 20px; border-top: 1px solid rgba(255,255,255,0.1); background-color: #050505; }
.prompt { color: var(--red-glow-bright); margin-right: 10px; font-weight: bold; }
#term-input { background: transparent !important; border: none !important; color: #fff !important; font-family: 'Courier New', Courier, monospace; font-size: 1.1rem; flex-grow: 1; outline: none !important; pointer-events: auto; }

/* KAN KIRMIZISI GEÇİŞ PERDESI */
.page-transition-overlay { position: fixed; top: 100%; left: 0; width: 100vw; height: 100vh; background-color: var(--red-glow-bright); z-index: 999990; transition: top 0.8s cubic-bezier(0.77, 0, 0.175, 1); pointer-events: none; }
.page-transition-overlay.active { top: 0; pointer-events: auto; }

@media (max-width: 768px) {
    .fixed-nav { padding: 1.5rem 2rem; }
    .project-info.align-right { text-align: left; }
    .project-line.right { margin-left: 0; }
}
@media (hover: none) and (pointer: coarse) {
    .cursor-dot, .cursor-ring { display: none !important; }
    * { cursor: auto !important; }
}