/* ============================================================
   CORONATI.NET — coronati-extra.css
   Stili condivisi per: webring, muro bottoni, blinkies, pioggia
   di corone. Pensato per essere incluso in TUTTE le pagine via:
   <link rel="stylesheet" href="css/coronati-extra.css">
   Non tocca gli stili inline esistenti di ogni pagina.
   ============================================================ */

/* ---------- Webring strip (footer, presente su ogni pagina) ---------- */
.webring-strip {
  background: #110033;
  border: 2px groove #9900cc;
  border-radius: 0;
  margin: 10px auto;
  max-width: 1100px;
  padding: 8px 10px;
  text-align: center;
  font-family: "Comic Sans MS", cursive;
  font-size: 13px;
  color: #ffdd00;
}

.webring-strip .ring-label {
  display: block;
  color: #aaffaa;
  font-size: 11px;
  font-family: "Arial", sans-serif;
  margin-bottom: 4px;
  letter-spacing: 1px;
}

.webring-strip a {
  display: inline-block;
  background: #660099;
  border: 2px outset #cc44ff;
  color: #ffffff !important;
  text-decoration: none !important;
  padding: 3px 10px;
  margin: 2px;
  font-size: 12px;
  font-weight: bold;
}

.webring-strip a:hover {
  background: #9900cc;
  border: 2px inset #cc44ff;
  color: #ffff00 !important;
}

.webring-strip .ring-count {
  color: #888;
  font-size: 11px;
  font-family: "Arial", sans-serif;
  display: block;
  margin-top: 4px;
}

/* ---------- Pioggia di corone: canvas a schermo intero ---------- */
#crown-rain-canvas {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  z-index: 9998;
}

/* ---------- IL PANNELLO DELL'OCCHIO (sidebar nascosta, ogni pagina) ---------- */
.occhio-panel {
  position: fixed;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10000;
  display: flex;
  align-items: center;
  font-family: "Arial", sans-serif;
}

.occhio-tab {
  width: 42px;
  height: 42px;
  flex: none;
  background: radial-gradient(circle, #2a0050 0%, #0a0014 80%);
  border: 2px solid #ffdd00;
  border-radius: 0 50% 50% 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  box-shadow: 0 0 6px #9900cc;
  animation: occhio-pulse 3.5s ease-in-out infinite;
}

@keyframes occhio-pulse {
  0%, 100% { box-shadow: 0 0 4px #660099; }
  50% { box-shadow: 0 0 12px #cc44ff; }
}

.occhio-tab:hover { background: radial-gradient(circle, #3a0070 0%, #150022 80%); }

.occhio-content {
  background: #0a0014;
  border: 2px solid #ffdd00;
  border-left: none;
  width: 220px;
  max-height: 82vh;
  overflow-y: auto;
  padding: 10px 12px;
  box-shadow: 4px 0 14px rgba(0,0,0,0.6);
}

.occhio-content[hidden] { display: none; }

.occhio-header {
  display: flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px dashed #663399;
  padding-bottom: 8px;
  margin-bottom: 8px;
}

.occhio-title {
  color: #ffdd00;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 1px;
  font-family: "Courier New", monospace;
}

.occhio-section {
  border-bottom: 1px dashed #442266;
  padding-bottom: 8px;
  margin-bottom: 8px;
  text-align: center;
}

.occhio-section:last-child { border-bottom: none; margin-bottom: 0; }

.occhio-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  justify-content: center;
}

.occhio-nav-link {
  display: inline-flex;
  width: 24px;
  height: 24px;
  align-items: center;
  justify-content: center;
  background: #1a0030;
  border: 1px solid #663399;
  text-decoration: none !important;
}

.occhio-nav-link:hover { background: #330066; border-color: #ffdd00; }

.occhio-ring .ring-label {
  color: #aaffaa;
  font-size: 10px;
  letter-spacing: 1px;
  margin-bottom: 6px;
}

.occhio-ring-controls {
  display: flex;
  justify-content: center;
  gap: 4px;
}

.occhio-ring-controls a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  background: #1a0030;
  border: 1px solid #663399;
  color: #ffdd00 !important;
  text-decoration: none !important;
  font-size: 13px;
  padding: 0 4px;
}

.occhio-ring-controls a:hover { background: #330066; border-color: #ffdd00; }

.occhio-ring .ring-count {
  display: block;
  margin-top: 6px;
  font-size: 10px;
  color: #776688;
}

.crown-rain-toggle-btn {
  width: 100%;
  background: #330066;
  border: 2px outset #cc44ff;
  color: #ffdd00;
  font-size: 11px;
  font-weight: bold;
  padding: 5px 6px;
  cursor: pointer;
}

.crown-rain-toggle-btn:hover { background: #4d0099; }

.occhio-counter {
  font-family: "Courier New", monospace;
  font-size: 12px;
  color: #00ff88;
  background: #000;
  border: 1px inset #444;
  padding: 4px;
}

.cipher-label {
  color: #aaffaa;
  font-size: 10px;
  letter-spacing: 1px;
  margin-bottom: 4px;
}

.cipher-text {
  font-family: "Courier New", monospace;
  font-size: 11px;
  color: #cc99ff;
  background: #15002a;
  border: 1px inset #442266;
  padding: 5px;
  margin-bottom: 6px;
  line-height: 1.4;
  word-break: break-word;
}

.cipher-toggle {
  background: #1a0030;
  border: 1px solid #663399;
  color: #ffdd00;
  font-size: 10px;
  padding: 2px 8px;
  cursor: pointer;
}

.cipher-toggle:hover { border-color: #ffdd00; }

/* ---------- Muro dei bottoni (88x31) ---------- */
.button-wall {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  padding: 10px 0;
}

.button-wall .button-cell {
  text-align: center;
}

.button-wall img {
  image-rendering: pixelated;
  border: 1px solid #444;
  display: block;
}

.embed-box {
  background: #000000;
  border: 2px inset #666;
  color: #00ff88;
  font-family: "Courier New", monospace;
  font-size: 12px;
  padding: 6px;
  width: 100%;
  max-width: 380px;
  height: 54px;
  margin: 8px auto 4px auto;
  resize: none;
  display: block;
}

.copy-btn {
  background: #660099;
  border: 2px outset #cc44ff;
  color: #ffffff;
  font-size: 12px;
  font-weight: bold;
  padding: 4px 12px;
  cursor: pointer;
  font-family: "Arial", sans-serif;
}

.copy-btn:hover {
  background: #9900cc;
}

.copy-btn:active {
  border: 2px inset #cc44ff;
}

.copy-feedback {
  font-size: 11px;
  color: #00ff88;
  margin-left: 6px;
  font-family: "Arial", sans-serif;
}

/* ---------- Muro delle blinkies (150x20) ---------- */
.blinkie-wall {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  padding: 10px 0;
}

.blinkie-wall img {
  image-rendering: pixelated;
  display: block;
}

/* ---------- Sezione generica vetrina ---------- */
.vetrina-section {
  text-align: center;
  margin-bottom: 6px;
}

.vetrina-hint {
  font-size: 13px;
  color: #8888bb;
  font-family: "Arial", sans-serif;
  margin-top: 6px;
}

/* ---------- Guestbook live (contatti.html) ---------- */
.gb-status {
  font-size: 13px;
  color: #8888cc;
  font-family: "Arial", sans-serif;
  text-align: center;
  padding: 6px 0;
}

.gb-error {
  color: #ff6666;
}

.gb-form-input,
.gb-form-textarea {
  width: 100%;
  box-sizing: border-box;
  background: #0a0a33;
  border: 2px inset #334488;
  color: #ccccff;
  font-family: "Arial", sans-serif;
  font-size: 14px;
  padding: 5px 7px;
  margin: 3px 0 8px 0;
}

.gb-form-textarea {
  height: 60px;
  resize: vertical;
}

.gb-submit-btn {
  background: #2a2a66;
  border: 2px outset #4444aa;
  color: #ffffff;
  font-weight: bold;
  font-size: 13px;
  padding: 5px 14px;
  cursor: pointer;
}

.gb-submit-btn:hover { background: #3a3a88; }
.gb-submit-btn:disabled { opacity: 0.5; cursor: default; }

.gb-honeypot {
  position: absolute !important;
  left: -9999px !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.gb-new-entry {
  animation: gb-flash-in 1.2s ease-out;
}

@keyframes gb-flash-in {
  0% { background: #334488; }
  100% { background: #060622; }
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
  .webring-strip { font-size: 12px; }
  .button-wall, .blinkie-wall { gap: 6px; }

  .occhio-panel {
    left: auto;
    right: 10px;
    top: auto;
    bottom: 10px;
    transform: none;
    flex-direction: column-reverse;
    align-items: flex-end;
  }
  .occhio-tab { border-radius: 50%; align-self: flex-end; }
  .occhio-content {
    border-left: 2px solid #ffdd00;
    border-bottom: none;
    width: 70vw;
    max-width: 260px;
    margin-bottom: 6px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.6);
  }
}
