/* Modulo \"Scrivi una recensione\" - Stili dedicati
   - Fedeltà al design Trustpilot (colori, spaziatura, tipografia)
   - Layout responsive e accessibile
   - Nessuna dipendenza esterna pesante per evitare regressioni di performance */
:root{
  --tp-green: #00b67a;
  --tp-dark: #1c1c1c;
  --tp-muted: #6c6c85;
  --tp-bg: #f2f2f5;
  --tp-border: #e5e5e5;
  --tp-white: #ffffff;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;color:var(--tp-dark);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";background:var(--tp-white)}
.tp-header{background:var(--tp-dark);padding:12px 16px;display:flex;align-items:center}
.tp-logo img{display:block}
.tp-container{max-width:960px;margin:24px auto;padding:0 16px}
.tp-form-card{background:var(--tp-white);border:1px solid var(--tp-border);border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,0.04);padding:24px}
.tp-form-title{margin:0 0 12px;font-size:24px;line-height:1.3}
.tp-form{display:block}
.tp-field{margin-bottom:20px}
.tp-label{display:block;font-weight:600;margin-bottom:8px}
.tp-input,.tp-textarea{width:100%;border:1px solid var(--tp-border);border-radius:6px;padding:10px 12px;font-size:16px;outline:none;background:var(--tp-white)}
.tp-input:focus,.tp-textarea:focus{border-color:var(--tp-green);box-shadow:0 0 0 3px rgba(0,182,122,0.15)}
.tp-meta{margin-top:6px;color:var(--tp-muted);font-size:12px}
.tp-error{color:#d32f2f;font-size:13px;margin-top:6px;min-height:18px}
.tp-row{display:flex;gap:12px;flex-wrap:wrap}
.tp-col{flex:1 1 280px}
.tp-actions{display:flex;gap:12px;align-items:center}
.tp-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:10px 16px;font-weight:600;text-decoration:none;cursor:pointer;border:1px solid var(--tp-border)}
.tp-button-primary{background:var(--tp-green);color:var(--tp-white);border-color:var(--tp-green)}
.tp-button-primary:hover{filter:brightness(0.95)}
.tp-button-secondary{background:var(--tp-bg);color:var(--tp-dark)}
.tp-footer{padding:24px;color:var(--tp-muted);text-align:center}

/* stars */
.tp-rating .tp-stars{display:flex;gap:6px}
.tp-star{width:36px;height:36px;border-radius:6px;background:var(--tp-bg);border:1px solid var(--tp-border);position:relative}
.tp-star::before{content:"";position:absolute;inset:8px;background:var(--tp-muted);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
.tp-star.selected{background:var(--tp-green);border-color:var(--tp-green)}
.tp-star.selected::before{background:var(--tp-white)}
.tp-star:focus{outline:2px solid rgba(0,182,122,0.5)}

@media (max-width:640px){
  .tp-form-card{padding:16px}
  .tp-form-title{font-size:20px}
  .tp-star{width:32px;height:32px}
}
