/* ŞovalyeCraft - Custom styles */
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
::selection { background: rgba(251, 191, 36, 0.4); color: #1a1410; }

/* Skin renderer helper */
.skin-frame { background: linear-gradient(180deg, rgba(251,191,36,0.08), transparent); border: 1px solid rgba(251,191,36,0.2); border-radius: 12px; padding: 1rem; }

/* Hero overlay */
.hero-overlay { background: linear-gradient(180deg, rgba(10,10,10,0.4) 0%, rgba(10,10,10,0.9) 100%); }

/* Card hover */
.card-hover { transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.card-hover:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(251,191,36,0.15); }

/* Loading spinner */
.spinner { border: 3px solid rgba(251,191,36,0.2); border-top-color: #fbbf24; border-radius: 50%; width: 32px; height: 32px; animation: spin 1s linear infinite; display: inline-block; }
@keyframes spin { 100% { transform: rotate(360deg); } }

/* Markdown editor preview */
.md-editor { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; min-height: 400px; }
@media (max-width: 768px) { .md-editor { grid-template-columns: 1fr; } }
.md-editor textarea { font-family: 'JetBrains Mono', 'Courier New', monospace; font-size: 13px; line-height: 1.5; }

/* Animations */
@keyframes slideInUp { from { opacity:0; transform: translateY(20px); } to { opacity:1; transform: translateY(0); } }
.slide-in-up { animation: slideInUp .5s ease-out both; }

@keyframes glow { 0%,100% { text-shadow: 0 0 8px rgba(251,191,36,0.4); } 50% { text-shadow: 0 0 24px rgba(251,191,36,0.8); } }
.glow-animate { animation: glow 2.5s ease-in-out infinite; }

/* Live log styles */
.log-line { font-family: 'JetBrains Mono', monospace; font-size: 12px; padding: 4px 8px; border-left: 3px solid transparent; }
.log-debug { color: #94a3b8; border-color: #64748b; }
.log-info { color: #93c5fd; border-color: #3b82f6; }
.log-warn { color: #fcd34d; border-color: #f59e0b; background: rgba(251,191,36,0.05); }
.log-error { color: #fca5a5; border-color: #ef4444; background: rgba(239,68,68,0.05); }
.log-critical { color: #fff; background: rgba(239,68,68,0.2); border-color: #dc2626; font-weight: bold; }

/* Toggle switch */
.toggle { position: relative; display: inline-block; width: 44px; height: 24px; }
.toggle input { opacity: 0; width: 0; height: 0; }
.toggle-slider { position: absolute; cursor: pointer; inset: 0; background: #374151; transition: .3s; border-radius: 24px; }
.toggle-slider:before { content: ''; position: absolute; height: 18px; width: 18px; left: 3px; bottom: 3px; background: white; transition: .3s; border-radius: 50%; }
input:checked + .toggle-slider { background: linear-gradient(135deg, #fbbf24, #d97706); }
input:checked + .toggle-slider:before { transform: translateX(20px); }

/* Skin avatar */
.skin-avatar { image-rendering: pixelated; image-rendering: -moz-crisp-edges; image-rendering: crisp-edges; }

/* Print styles */
@media print { header, footer, #serverStatusWidget, #cookieBanner, #rulesGate { display: none !important; } }
