/* ============ NOVA FİLO — v4: canlı yeşil paleti, güven bandı, giriş dalgaları, panel içi ============ */

/* ---------- Güven bandı: gündüz parlak zümrüt, gece derin yeşil-siyah ---------- */
.gv-trust { background: linear-gradient(115deg, #046c4b 0%, #0a9b66 52%, #22c58b 100%); color: #fff; position: relative; }
.gv-trust::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(40% 120% at 12% 0%, rgba(255, 255, 255, 0.22), transparent 70%), radial-gradient(30% 100% at 92% 100%, rgba(0, 60, 40, 0.35), transparent 70%); }
.gv-trust > * { position: relative; }
.gv-trust .gv-stat { border-left-color: rgba(255, 255, 255, 0.28); }
.gv-trust .gv-stat span { color: rgba(255, 255, 255, 0.82); }
.gv-trust .gv-stat strong sup { color: #d6ffe9; }
.gv-trust .gv-marquee { border-top-color: rgba(255, 255, 255, 0.24); }
.gv-trust .gv-marquee-track span { color: rgba(255, 255, 255, 0.92); }
.gv-trust .gv-marquee-track svg { color: #d6ffe9; }
:root[data-theme="dark"] .gv-trust { background: linear-gradient(115deg, #02100a 0%, #05231a 55%, #073524 100%); border-block: 1px solid rgba(47, 212, 122, 0.22); }
:root[data-theme="dark"] .gv-trust::before { background: radial-gradient(40% 120% at 12% 0%, rgba(47, 212, 122, 0.2), transparent 70%), radial-gradient(30% 100% at 92% 100%, rgba(20, 184, 166, 0.18), transparent 70%); }
:root[data-theme="dark"] .gv-trust .gv-stat { border-left-color: rgba(47, 212, 122, 0.2); }
:root[data-theme="dark"] .gv-trust .gv-stat span { color: rgba(214, 255, 233, 0.66); }
:root[data-theme="dark"] .gv-trust .gv-stat strong sup, :root[data-theme="dark"] .gv-trust .gv-marquee-track svg { color: #4df59a; }
:root[data-theme="dark"] .gv-trust .gv-marquee { border-top-color: rgba(47, 212, 122, 0.18); }
:root[data-theme="dark"] .gv-trust .gv-marquee-track span { color: rgba(214, 255, 233, 0.82); }

/* ---------- Giriş ekranı: yeşil-siyah dalgalar ---------- */
.ap-login { background: #020c07; }
.ap-login-bg { animation: none; background: radial-gradient(900px 500px at 15% 10%, rgba(16, 185, 129, 0.22), transparent 62%), radial-gradient(800px 500px at 90% 90%, rgba(13, 148, 136, 0.22), transparent 60%), linear-gradient(180deg, #03140c 0%, #020a06 100%); }
.ap-glow { position: absolute; border-radius: 50%; pointer-events: none; mix-blend-mode: screen; }
.ap-glow-1 { width: 620px; height: 620px; left: -8%; top: -14%; background: radial-gradient(circle, rgba(52, 211, 153, 0.34), transparent 66%); animation: apDrift1 16s ease-in-out infinite alternate; }
.ap-glow-2 { width: 700px; height: 700px; right: -10%; bottom: -22%; background: radial-gradient(circle, rgba(13, 148, 136, 0.4), transparent 66%); animation: apDrift2 20s ease-in-out infinite alternate; }
@keyframes apDrift1 { to { transform: translate3d(18vw, 14vh, 0) scale(1.15); } }
@keyframes apDrift2 { to { transform: translate3d(-16vw, -12vh, 0) scale(1.1); } }
.ap-waves { position: absolute; left: 0; right: 0; bottom: 0; height: 62vh; pointer-events: none; overflow: hidden; -webkit-mask-image: linear-gradient(180deg, transparent, #000 40%); mask-image: linear-gradient(180deg, transparent, #000 40%); }
.ap-wave { position: absolute; left: 0; bottom: 0; width: 200%; height: 100%; will-change: transform; }
.ap-wave-1 { animation: apWave 22s linear infinite; height: 78%; }
.ap-wave-2 { animation: apWave 34s linear infinite reverse; height: 92%; opacity: 0.9; }
.ap-wave-3 { animation: apWave 48s linear infinite; height: 64%; }
@keyframes apWave { to { transform: translateX(-50%); } }
.ap-login-card { background: linear-gradient(180deg, rgba(8, 28, 20, 0.82), rgba(3, 14, 9, 0.9)); border: 1px solid rgba(52, 211, 153, 0.28); box-shadow: 0 40px 100px -30px rgba(0, 0, 0, 0.85), 0 0 90px -24px rgba(16, 185, 129, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.07); }
.ap-login-card::before { background: linear-gradient(90deg, transparent, #6ee7b7, transparent); }
.ap-login-card h1 { background: none; color: #ecfff6; }
.ap-login-form input { background: rgba(2, 12, 8, 0.7); border-color: rgba(52, 211, 153, 0.2); color: #ecfff6; }
.ap-login-form input:focus { border-color: #34d399; box-shadow: 0 0 0 3px rgba(52, 211, 153, 0.22); }
.ap-login-btn { background: linear-gradient(135deg, #6ee7b7, #10b981 55%, #0d9488) !important; color: #02130b !important; font-weight: 800; letter-spacing: 0.01em; box-shadow: 0 14px 34px -12px rgba(16, 185, 129, 0.75) !important; position: relative; overflow: hidden; }
.ap-login-btn::after { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 35%, rgba(255, 255, 255, 0.5) 50%, transparent 65%); transform: translateX(-120%); animation: shine 4.5s ease-in-out 1.2s infinite; pointer-events: none; }
.ap-login-btn:hover { filter: brightness(1.08); }

/* ---------- Panel içi: zengin yeşil-siyah ---------- */
.ap-shell { --ap-accent: #34d399; background: radial-gradient(1100px 620px at 6% -12%, rgba(16, 185, 129, 0.16), transparent 58%), radial-gradient(900px 560px at 100% 0%, rgba(13, 148, 136, 0.16), transparent 58%), radial-gradient(700px 500px at 60% 110%, rgba(163, 230, 53, 0.05), transparent 60%), #030d08; }
.ap-sidebar { background: linear-gradient(180deg, #04170e 0%, #02100a 100%); border-right: 1px solid rgba(52, 211, 153, 0.14); box-shadow: 18px 0 50px -30px rgba(16, 185, 129, 0.25); }
.ap-sidebar::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 160px; pointer-events: none; background: radial-gradient(120% 100% at 0% 0%, rgba(52, 211, 153, 0.14), transparent 70%); }
.ap-topbar { background: rgba(3, 13, 8, 0.7); backdrop-filter: blur(16px) saturate(1.4); -webkit-backdrop-filter: blur(16px) saturate(1.4); border-bottom: 1px solid rgba(52, 211, 153, 0.14); position: sticky; top: 0; z-index: 30; }
.ap-topbar-title h1 { color: #f1fff8; letter-spacing: -0.02em; }
.ap-nav-label { color: #4d7a63; letter-spacing: 0.18em; }
.ap-nav-link { color: #b4d4c2; }
.ap-nav-link.is-active { background: linear-gradient(135deg, rgba(52, 211, 153, 0.26), rgba(16, 185, 129, 0.06)); box-shadow: inset 0 0 0 1px rgba(52, 211, 153, 0.4), 0 0 28px -8px rgba(52, 211, 153, 0.55); color: #fff; }
.ap-content .admin-card, .ap-card, .analytics-stat-card, .analytics-chart-card, .admin-stat { background: linear-gradient(180deg, rgba(9, 32, 22, 0.78), rgba(4, 18, 12, 0.92)); border: 1px solid rgba(52, 211, 153, 0.13); box-shadow: 0 18px 40px -22px rgba(0, 0, 0, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.045); position: relative; overflow: hidden; }
.analytics-stat-card::before, .admin-stat::before { content: ""; position: absolute; left: 18px; right: 18px; top: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(110, 231, 183, 0.7), transparent); opacity: 0.55; }
.analytics-stat-card:hover, .admin-stat:hover, .ap-content .admin-card:hover { transform: translateY(-3px); border-color: rgba(52, 211, 153, 0.38); box-shadow: 0 24px 50px -22px rgba(16, 185, 129, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.06); }
.analytics-stat-value, .admin-stat strong { background: none; color: #f1fff8; font-variant-numeric: tabular-nums; }
.ap-section-kicker, .ap-content [class*="kicker"] { color: #6ee7b7; }
.ap-content .table th { color: #6fae92; background: rgba(16, 185, 129, 0.06); }
.ap-content .table tbody tr { transition: background 0.2s; }
.ap-content .table tbody tr:hover { background: rgba(52, 211, 153, 0.07); }
.ap-user-chip, .ap-live-pill { background: rgba(16, 185, 129, 0.1); border-color: rgba(52, 211, 153, 0.25); }
.ap-live-pill::before { box-shadow: 0 0 0 0 rgba(52, 211, 153, 0.6); animation: gvPulse 2s ease-out infinite; }
.ap-side-btn, .ap-logout { background: rgba(16, 185, 129, 0.07); border-color: rgba(52, 211, 153, 0.18); }
.ap-side-btn:hover, .ap-logout:hover { background: rgba(16, 185, 129, 0.16); }
.ap-content .form input, .ap-content .form textarea, .ap-content .form select { background: rgba(2, 12, 8, 0.7); border-color: rgba(52, 211, 153, 0.18); }
.ap-login .ap-login-form input { background: rgba(2, 14, 9, 0.78) !important; border: 1px solid rgba(52, 211, 153, 0.22) !important; color: #ecfff6 !important; }
.ap-login .ap-login-form input:focus { border-color: #34d399 !important; }
.ap-login-form label { color: #8fc4aa; }
.ap-wave-3 { opacity: 0.55; }
