* { box-sizing: border-box; }
body { margin: 0; font-family: 'Ubuntu', sans-serif; display: flex; flex-direction: column; align-items: center; min-height: 100vh; background-color: var(--primario); }
.navbar { width: 100%; display: flex; justify-content: space-between; padding: 15px 40px; background-color: rgba(255, 255, 255, 0.1); }
.logo-box { display: flex; align-items: center; gap: 15px; }
.logo-text { color: white; font-size: 36px; font-weight: 700; margin: 0; }
.btn-back { background-color: white; color: var(--primario); padding: 10px 20px; font-weight: bold; border-radius: 8px; text-decoration: none; }
.container { width: 700px; margin-top: 30px; }
.domanda-box { background-color: var(--secondario); padding: 30px; border-radius: 12px; border: 4px solid white; }
.domanda-box h1 { color: white; text-align: center; }
.domanda-info { background: var(--primario); padding: 10px; border-radius: 6px; color: white; font-weight: bold; text-align: center; border: 2px solid white; }
.risposte-area { margin-top: 30px; display: flex; flex-direction: column; gap: 15px; }
.risposta-bubble { background-color: white; padding: 20px; border-radius: 12px; border-left: 8px solid var(--secondario); }
.risposta-tua { border-left: 8px solid var(--primario); }
.risposta-autore { font-weight: bold; font-size: 14px; text-transform: uppercase; margin-bottom: 8px; }
.nessuna-risposta { color: white; text-align: center; font-style: italic; }
.form-rispondi { margin-top: 40px; background-color: rgba(0,0,0,0.2); padding: 25px; border-radius: 12px; }
textarea { width: 100%; padding: 15px; border-radius: 8px; min-height: 100px; margin-bottom: 15px; font-family: 'Ubuntu', sans-serif; }
.btn-submit { background-color: var(--secondario); color: white; border: 2px solid white; width: 100%; padding: 15px; font-size: 20px; font-weight: bold; border-radius: 8px; cursor: pointer; }
.blocco-risposta { text-align: center; color: white; }
.btn-premio { background-color: #FFD700; color: black; border: 2px solid #DAA520; padding: 10px 15px; font-weight: bold; border-radius: 8px; cursor: pointer; text-decoration: none; display: inline-block; transition: 0.2s; }
.btn-premio:hover { transform: scale(1.05); background-color: #FFC125; }
.risposta-vincitrice { border: 4px solid #FFD700 !important; background-color: rgba(255, 215, 0, 0.1); box-shadow: 0 0 15px rgba(255, 215, 0, 0.5); }
.badge-vincitore { display: inline-block; background: #FFD700; color: black; padding: 5px 15px; border-radius: 20px; font-weight: bold; font-size: 14px; margin-bottom: 10px; }
.status-risolta { background-color: #4CAF50 !important; border-color: #2E8B57 !important; }