/* ========================================
   TEMA TERMINALE COMPLETO - TUTTI I BLOCCHI
======================================== */

/* SMOOTH SCROLL */
html {
  scroll-behavior: smooth;
}

/* BACK-TO-TOP TERMINALE */
.back-to-top {
  position: fixed !important;
  right: 20px !important;
  bottom: 20px !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  background: #000 !important;
  border: 2px solid #00FF00 !important;
  color: #00FF00 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  opacity: 0.95 !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 0 20px rgba(0, 255, 0, 0.4) !important;
  z-index: 99999 !important;
}

.back-to-top:hover {
  background: #001100 !important;
  border-color: #00FF41 !important;
  box-shadow: 0 0 30px rgba(0, 255, 0, 0.7) !important;
  transform: scale(1.15) !important;
}

.back-to-top:active {
  background: #00FF00 !important;
  border: 2px solid #000 !important;
  color: #000 !important;
  box-shadow: 0 0 15px rgba(0, 255, 0, 1) !important;
  transform: scale(0.98) !important;
}

.back-to-top svg {
  stroke: currentColor !important;
  filter: drop-shadow(0 0 3px currentColor);
}

/* PULSANTI GLOBALI */
button, 
input[type="submit"], 
input[type="button"], 
.wp-block-button__link, 
.wp-block-button .wp-block-button__link,
a.wp-block-button__link,
a[class*="button"] {
  transition: all 0.2s ease !important;
}

button:hover, 
input[type="submit"]:hover, 
input[type="button"]:hover, 
.wp-block-button__link:hover, 
.wp-block-button .wp-block-button__link:hover,
a.wp-block-button__link:hover,
a[class*="button"]:hover {
  box-shadow: 0 0 20px rgba(0, 255, 0, 0.6) !important;
  transform: scale(1.05) !important;
  border-color: #00FF41 !important;
}

button:active, 
input[type="submit"]:active, 
input[type="button"]:active, 
.wp-block-button__link:active, 
.wp-block-button .wp-block-button__link:active,
a.wp-block-button__link:active,
a[class*="button"]:active {
  background: #00FF00 !important;
  color: #000 !important;
  border-color: #000 !important;
  box-shadow: 0 0 15px rgba(0, 255, 0, 1) !important;
  transform: scale(0.98) !important;
}

/* LINK GLOW */
a {
  transition: all 0.3s ease;
}

a:hover {
  color: #00FF41 !important;
  text-shadow: 0 0 8px rgba(0,255,0,0.6);
}

/* HEADER GLOW GLOBALE */
.site-title a,
.site-title a:hover,
header .site-title a {
  color: #00FF00 !important;
  text-shadow: 0 0 12px rgba(0,255,0,0.7) !important;
  font-weight: 700 !important;
}

header .site-description {
  color: #00FF00 !important;
  opacity: 0.8;
}

/* ========================================
   CLASSI ANIMATE PER BLOCCHI
======================================== */

/* 1. HEADER PRINCIPALE (intestazioni grandi) */
.animate-header,
.wp-block-columns.animate-header,
.wp-block-group.animate-header,
.wp-block-contents.animate-header,
[class*="contents"].animate-header {
  border-radius: 16px !important;
  border: 2px solid rgba(0,255,0,0.6) !important;
  box-shadow: 
    0 0 25px rgba(0,255,0,0.5),
    0 5px 30px rgba(0,255,0,0.3) !important;
  padding: 20px !important;
  margin-bottom: 30px !important;
  transition: all 0.4s ease !important;
  background: rgba(0,0,0,0.95) !important;
  backdrop-filter: blur(10px) !important;
}

.animate-header:hover {
  box-shadow: 
    0 0 35px rgba(0,255,0,0.7),
    0 8px 45px rgba(0,255,0,0.5) !important;
  border-color: rgba(0,255,0,0.8) !important;
  transform: translateY(-5px) !important;
  background: rgba(0,0,0,0.98) !important;
}

.animate-header:active {
  box-shadow: 
    0 0 45px rgba(0,255,0,0.9),
    0 10px 60px rgba(0,255,0,0.7) !important;
  border-color: #00FF00 !important;
  transform: translateY(-3px) scale(1.01) !important;
}

/* 2. FLASHCARD / COPERTINA (portfolio, servizi) */
.animate-flashcard,
.wp-block-cover.animate-flashcard {
  border-radius: 14px !important;
  border: 2px solid rgba(0,255,0,0.5) !important;
  box-shadow: 
    0 0 20px rgba(0,255,0,0.4),
    0 4px 25px rgba(0,255,0,0.25) !important;
  padding: 18px !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
  overflow: hidden !important;
}

.animate-flashcard:hover {
  box-shadow: 
    0 0 30px rgba(0,255,0,0.6),
    0 6px 35px rgba(0,255,0,0.4) !important;
  border-color: rgba(0,255,0,0.75) !important;
  transform: translateY(-4px) scale(1.02) !important;
}

.animate-flashcard:active {
  box-shadow: 
    0 0 40px rgba(0,255,0,0.8),
    0 8px 50px rgba(0,255,0,0.6) !important;
  border-color: #00FF00 !important;
  transform: translateY(-2px) scale(1.01) !important;
}

/* 3. GRUPPO (contenitori generici) */
.animate-group,
.wp-block-group.animate-group {
  border-radius: 12px !important;
  border: 2px solid rgba(0,255,0,0.4) !important;
  box-shadow: 
    0 0 18px rgba(0,255,0,0.35),
    0 3px 20px rgba(0,255,0,0.2) !important;
  padding: 16px !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  background: rgba(0,0,0,0.7) !important;
}

.animate-group:hover {
  box-shadow: 
    0 0 25px rgba(0,255,0,0.5),
    0 5px 30px rgba(0,255,0,0.3) !important;
  border-color: rgba(0,255,0,0.6) !important;
  transform: translateY(-3px) !important;
}

.animate-group:active {
  box-shadow: 
    0 0 35px rgba(0,255,0,0.7),
    0 7px 40px rgba(0,255,0,0.4) !important;
  border-color: rgba(0,255,0,0.8) !important;
}

/* 4. RIGA / COLONNE */
.animate-row,
.wp-block-columns.animate-row {
  border-radius: 12px !important;
  border: 2px solid rgba(0,255,0,0.4) !important;
  box-shadow: 
    0 0 18px rgba(0,255,0,0.35),
    0 3px 20px rgba(0,255,0,0.2) !important;
  padding: 16px !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
}

.animate-row:hover {
  box-shadow: 
    0 0 25px rgba(0,255,0,0.5),
    0 5px 30px rgba(0,255,0,0.3) !important;
  border-color: rgba(0,255,0,0.6) !important;
  transform: translateY(-3px) !important;
}

/* 5. IMMAGINE */
.animate-image,
.wp-block-image.animate-image img {
  border-radius: 10px !important;
  border: 2px solid rgba(0,255,0,0.5) !important;
  box-shadow: 
    0 0 20px rgba(0,255,0,0.4),
    0 4px 25px rgba(0,255,0,0.25) !important;
  transition: all 0.3s ease !important;
}

.animate-image:hover,
.wp-block-image.animate-image:hover img {
  box-shadow: 
    0 0 30px rgba(0,255,0,0.6),
    0 6px 35px rgba(0,255,0,0.4) !important;
  border-color: rgba(0,255,0,0.75) !important;
  transform: scale(1.02) !important;
}

/* 6. GALLERIA */
.animate-gallery,
.wp-block-gallery.animate-gallery {
  border-radius: 12px !important;
  border: 2px solid rgba(0,255,0,0.4) !important;
  box-shadow: 
    0 0 18px rgba(0,255,0,0.35),
    0 3px 20px rgba(0,255,0,0.2) !important;
  padding: 12px !important;
  transition: all 0.3s ease !important;
}

.animate-gallery:hover {
  box-shadow: 
    0 0 25px rgba(0,255,0,0.5),
    0 5px 30px rgba(0,255,0,0.3) !important;
  border-color: rgba(0,255,0,0.6) !important;
}

/* 7. VIDEO */
.animate-video,
.wp-block-video.animate-video,
.wp-block-embed.animate-video {
  border-radius: 12px !important;
  border: 2px solid rgba(0,255,0,0.5) !important;
  box-shadow: 
    0 0 20px rgba(0,255,0,0.4),
    0 4px 25px rgba(0,255,0,0.25) !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
}

.animate-video:hover {
  box-shadow: 
    0 0 30px rgba(0,255,0,0.6),
    0 6px 35px rgba(0,255,0,0.4) !important;
  border-color: rgba(0,255,0,0.75) !important;
}

/* 8. CITAZIONE / QUOTE */
.animate-quote,
.wp-block-quote.animate-quote,
.wp-block-pullquote.animate-quote {
  border-radius: 10px !important;
  border-left: 4px solid #00FF00 !important;
  border-right: 2px solid rgba(0,255,0,0.3) !important;
  border-top: 2px solid rgba(0,255,0,0.3) !important;
  border-bottom: 2px solid rgba(0,255,0,0.3) !important;
  box-shadow: 
    0 0 15px rgba(0,255,0,0.3),
    -5px 0 20px rgba(0,255,0,0.2) !important;
  padding: 16px 20px !important;
  margin: 20px 0 !important;
  transition: all 0.3s ease !important;
  background: rgba(0,20,0,0.3) !important;
}

.animate-quote:hover {
  box-shadow: 
    0 0 25px rgba(0,255,0,0.5),
    -5px 0 30px rgba(0,255,0,0.3) !important;
  border-left-color: #00FF41 !important;
}

/* 9. LISTA */
.animate-list,
ul.animate-list,
ol.animate-list {
  border-radius: 10px !important;
  border: 2px solid rgba(0,255,0,0.3) !important;
  box-shadow: 
    0 0 15px rgba(0,255,0,0.25) !important;
  padding: 16px 20px 16px 40px !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
  background: rgba(0,10,0,0.2) !important;
}

.animate-list:hover {
  box-shadow: 
    0 0 20px rgba(0,255,0,0.4) !important;
  border-color: rgba(0,255,0,0.5) !important;
}

/* 10. TABELLA */
.animate-table,
.wp-block-table.animate-table {
  border-radius: 10px !important;
  border: 2px solid rgba(0,255,0,0.4) !important;
  box-shadow: 
    0 0 18px rgba(0,255,0,0.35) !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
}

.animate-table:hover {
  box-shadow: 
    0 0 25px rgba(0,255,0,0.5) !important;
  border-color: rgba(0,255,0,0.6) !important;
}

/* 11. CODICE */
.animate-code,
.wp-block-code.animate-code,
pre.animate-code {
  border-radius: 8px !important;
  border: 2px solid rgba(0,255,0,0.6) !important;
  box-shadow: 
    0 0 20px rgba(0,255,0,0.4),
    inset 0 0 10px rgba(0,255,0,0.1) !important;
  padding: 16px !important;
  transition: all 0.3s ease !important;
  background: rgba(0,20,0,0.5) !important;
}

.animate-code:hover {
  box-shadow: 
    0 0 30px rgba(0,255,0,0.6),
    inset 0 0 15px rgba(0,255,0,0.15) !important;
  border-color: #00FF00 !important;
}

/* 12. SEPARATORE */
.animate-separator,
.wp-block-separator.animate-separator,
hr.animate-separator {
  border: none !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, #00FF00, transparent) !important;
  box-shadow: 0 0 15px rgba(0,255,0,0.6) !important;
  margin: 30px 0 !important;
  transition: all 0.3s ease !important;
}

.animate-separator:hover {
  box-shadow: 0 0 25px rgba(0,255,0,0.9) !important;
}

/* 13. CARD SEMPLICE (qualsiasi blocco) */
.animate-click {
  transition: all 0.3s ease !important;
  cursor: pointer !important;
  border: 2px solid transparent !important;
  border-radius: 10px !important;
}

.animate-click:hover {
  border-color: rgba(0,255,0,0.5) !important;
  box-shadow: 0 0 25px rgba(0,255,0,0.4) !important;
}

.animate-click:active {
  border-color: #00FF00 !important;
  box-shadow: 0 0 40px rgba(0,255,0,0.8), inset 0 0 20px rgba(0,255,0,0.2) !important;
}

/* SCROLLBAR TERMINALE */
::-webkit-scrollbar {
  width: 12px;
}

::-webkit-scrollbar-track {
  background: #0a0a0a;
}

::-webkit-scrollbar-thumb {
  background: #00FF00 !important;
  border-radius: 6px !important;
  box-shadow: 0 0 10px rgba(0,255,0,0.5);
}

::-webkit-scrollbar-thumb:hover {
  background: #00FF41 !important;
}

/* MOBILE */
@media (max-width: 768px) {
  .back-to-top {
    right: 16px !important;
    bottom: 16px !important;
    width: 48px !important;
    height: 48px !important;
  }
  
  .animate-header,
  .animate-flashcard,
  .animate-group,
  .animate-row {
    padding: 14px !important;
    border-radius: 10px !important;
  }
}