/* Radiestesia — usa le variabili colore già definite in ../assets/css/style.css */

.rad-wrap{ max-width:1100px; margin:0 auto; padding:40px 24px 80px; }
.rad-hero{ text-align:center; margin-bottom:40px; }
.rad-hero .eyebrow{ color:var(--violet); }
.rad-hero h1{ font-size:clamp(32px,5vw,48px); margin-bottom:10px; }

.rad-filters{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-bottom:40px; }
.rad-filters a{
  padding:8px 18px; border-radius:20px; border:1px solid var(--line); font-size:14px;
  text-decoration:none; color:var(--ink); opacity:0.75;
}
.rad-filters a:hover, .rad-filters a.active{ opacity:1; border-color:var(--violet); color:var(--violet); }

.rad-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(240px,1fr)); gap:24px; }
.rad-card{
  background:var(--bone-2); border:1px solid var(--line); border-radius:16px; overflow:hidden;
  display:flex; flex-direction:column; text-decoration:none; color:var(--ink);
  transition:transform .18s ease, box-shadow .18s ease;
}
.rad-card:hover{ transform:translateY(-3px); box-shadow:0 10px 24px rgba(39,43,45,0.08); }
.rad-card .thumb{ aspect-ratio:1/1; background:var(--bone); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.rad-card .thumb img{ width:100%; height:100%; object-fit:cover; }
.rad-card .thumb .placeholder-text{ color:var(--ink); opacity:0.4; font-size:13px; }
.rad-card .body{ padding:18px; display:flex; flex-direction:column; gap:8px; flex:1; }
.rad-card h3{ font-size:18px; }
.rad-card .tag{ display:inline-block; font-size:11px; letter-spacing:0.06em; text-transform:uppercase; padding:4px 10px; border-radius:20px; width:fit-content; background:var(--violet); color:#fdf7f9; }

.rad-detail{ display:grid; grid-template-columns:1fr 1fr; gap:44px; align-items:flex-start; }
@media (max-width:800px){ .rad-detail{ grid-template-columns:1fr; } }
.rad-detail img{ width:100%; border-radius:16px; border:1px solid var(--line); }
.rad-detail .ph{ aspect-ratio:1/1; border-radius:16px; background:var(--bone-2); border:1px dashed var(--line); display:flex; align-items:center; justify-content:center; opacity:0.5; font-size:13px; }

/* pannello admin */
.ra-shell{ display:grid; grid-template-columns:220px 1fr; min-height:80vh; }
@media (max-width:760px){ .ra-shell{ grid-template-columns:1fr; } }
.ra-sidebar{ background:var(--bone-2); border-right:1px solid var(--line); padding:26px 18px; }
.ra-sidebar a{ display:block; padding:10px 12px; border-radius:8px; color:var(--ink); text-decoration:none; font-size:14px; margin-bottom:4px; }
.ra-sidebar a:hover, .ra-sidebar a.active{ background:var(--bone); color:var(--violet); }
.ra-content{ padding:34px; }
.ra-table{ width:100%; border-collapse:collapse; }
.ra-table th, .ra-table td{ text-align:left; padding:12px 10px; border-bottom:1px solid var(--line); font-size:14px; }
.ra-table th{ opacity:0.6; font-size:12px; text-transform:uppercase; }
.ra-form{ max-width:560px; }
.ra-form label{ display:block; font-size:13px; margin:16px 0 6px; opacity:0.75; }
.ra-form input, .ra-form textarea, .ra-form select{
  width:100%; padding:12px 14px; border-radius:8px; border:1px solid var(--line);
  font-family:'Manrope', sans-serif; font-size:14px; background:var(--bone);
}
.ra-form textarea{ min-height:100px; resize:vertical; }
.ra-error{ background:#fdf7f9; border-left:4px solid var(--terracotta); padding:12px 16px; border-radius:8px; font-size:14px; margin-bottom:16px; }
.ra-success{ background:#fdf7f9; border-left:4px solid var(--sage); padding:12px 16px; border-radius:8px; font-size:14px; margin-bottom:16px; }
