:root{--forum-border:#f2d7df;--forum-ink:#5f3d3b;--forum-muted:#8b6e6a;--forum-soft:#fff8f5}
.forum-body{background:radial-gradient(circle at 20% 0,#fff2f7 0,transparent 34%),linear-gradient(180deg,#fffaf8,#fff5f3);min-height:100vh}
.forum-page-shell{width:min(1460px,calc(100% - 36px));margin:18px auto 64px}.forum-topbar{position:sticky;top:14px;z-index:20}.forum-nav a.active{background:var(--pink-100);color:var(--brown-700)}
.forum-main{display:grid;gap:28px;margin-top:28px}.forum-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:34px;overflow:hidden;position:relative}.forum-intro:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-60px;top:-100px;background:linear-gradient(145deg,#fde1eb,#fff2ce);opacity:.58;pointer-events:none}.forum-intro>div{position:relative;z-index:1}.forum-intro h1{font-size:clamp(2.3rem,5vw,4.6rem);line-height:.95;margin:7px 0 15px;color:var(--brown-700)}.forum-intro p{max-width:720px;font-size:1.08rem;color:var(--forum-muted)}.forum-intro-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.forum-global-stat{padding:12px 16px;border-radius:999px;background:#fff;border:1px solid var(--forum-border);font-weight:800;color:var(--forum-muted);white-space:nowrap}
.forum-hub{display:grid;gap:18px}.forum-hub .section-head{align-items:flex-end}.forum-search input{width:min(320px,75vw);height:48px;border:1px solid var(--forum-border);border-radius:18px;background:#fff;padding:0 16px;font:inherit;color:var(--forum-ink);outline:none}.forum-search input:focus{box-shadow:0 0 0 4px rgba(227,105,151,.12);border-color:#e7a8bd}.forum-games-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.forum-game-card{min-height:190px;padding:0;display:grid;grid-template-columns:150px minmax(0,1fr);overflow:hidden;text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease}.forum-game-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(103,66,70,.10)}.forum-game-art{min-height:190px;background:var(--forum-card-color,#f9e2ea);position:relative;overflow:hidden}.forum-game-art img{width:100%;height:100%;object-fit:cover}.forum-game-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,rgba(255,255,255,.34))}.forum-game-copy{padding:22px;display:flex;flex-direction:column;justify-content:center;min-width:0}.forum-game-copy small{font-weight:800;color:#c55e87;text-transform:uppercase;letter-spacing:.05em}.forum-game-copy strong{font-size:1.28rem;color:var(--forum-ink);margin:5px 0 8px}.forum-game-copy p{color:var(--forum-muted);margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.forum-game-stats{display:flex;gap:12px;flex-wrap:wrap;font-size:.88rem;font-weight:800;color:#846461}.forum-empty,.forum-loading{padding:34px;text-align:center;color:var(--forum-muted)}
.forum-game-view,.forum-thread-view{display:grid;gap:18px}.forum-breadcrumb{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--forum-muted);font-size:.92rem}.forum-breadcrumb a{color:#a55372;font-weight:800;text-decoration:none}.forum-game-hero{padding:0;display:grid;grid-template-columns:280px minmax(0,1fr);overflow:hidden}.forum-game-hero-art{min-height:240px;background:var(--forum-card-color,#f9e2ea)}.forum-game-hero-art img{width:100%;height:100%;object-fit:cover}.forum-game-hero-copy{padding:30px;display:flex;flex-direction:column;justify-content:center}.forum-game-hero-copy h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1;margin:5px 0 12px;color:var(--forum-ink)}.forum-game-hero-copy p{color:var(--forum-muted);max-width:760px}.forum-game-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.forum-game-meta span,.forum-state-badge{padding:7px 11px;border-radius:999px;background:#fff5f8;border:1px solid #f3d7df;font-size:.82rem;font-weight:800;color:#8e5870}.forum-game-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.forum-game-toolbar h2{margin:3px 0 0;color:var(--forum-ink)}
.forum-thread-form,.forum-reply-form{padding:26px;display:grid;gap:16px}.forum-form-head,.forum-form-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.forum-thread-form label,.forum-reply-form label{display:grid;gap:8px;font-weight:800;color:var(--forum-ink)}.forum-thread-form input,.forum-thread-form textarea,.forum-reply-form textarea{width:100%;border:1px solid var(--forum-border);border-radius:16px;background:#fff;padding:14px 15px;font:inherit;color:var(--forum-ink);outline:none;resize:vertical}.forum-thread-form input:focus,.forum-thread-form textarea:focus,.forum-reply-form textarea:focus{border-color:#e6a2bb;box-shadow:0 0 0 4px rgba(227,105,151,.10)}.forum-form-actions small{color:var(--forum-muted);max-width:760px}
.forum-thread-list{display:grid;gap:10px}.forum-thread-row{padding:18px 20px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center}.forum-thread-main{min-width:0}.forum-thread-title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.forum-thread-title{font-size:1.05rem;font-weight:900;color:var(--forum-ink);text-decoration:none}.forum-thread-title:hover{text-decoration:underline}.forum-thread-excerpt{margin:6px 0 8px;color:var(--forum-muted);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.forum-thread-meta{display:flex;gap:8px 14px;flex-wrap:wrap;font-size:.82rem;color:#927873}.forum-thread-meta strong{color:#72514e}.forum-thread-side{text-align:right;min-width:120px}.forum-thread-side strong{display:block;color:var(--forum-ink)}.forum-thread-side small{color:var(--forum-muted)}.forum-thread-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.forum-mini-action{border:1px solid var(--forum-border);background:#fff;border-radius:10px;padding:6px 9px;font:inherit;font-size:.76rem;font-weight:800;color:#795957;cursor:pointer}.forum-mini-action.danger{color:#a44854;background:#fff6f6}.forum-state-badge.pinned{background:#fff3ce;border-color:#f4df9c;color:#826921}.forum-state-badge.locked{background:#f1eefb;border-color:#ded6f4;color:#665783}
.forum-thread-head{padding:28px}.forum-thread-head-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.forum-thread-head h1{font-size:clamp(1.8rem,4vw,3.2rem);line-height:1.05;color:var(--forum-ink);margin:6px 0 12px}.forum-thread-head p{color:var(--forum-muted)}.forum-thread-author{display:flex;gap:10px;align-items:center;margin-top:18px}.forum-author-avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#f6c8d9,#ffe8cc);font-weight:900;color:#7f4e61}.forum-thread-message{white-space:normal;line-height:1.72;color:#6f5450;margin-top:20px;border-top:1px solid #f4e4e7;padding-top:20px}.forum-posts{display:grid;gap:12px}.forum-post{padding:20px;display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px}.forum-post-copy{min-width:0}.forum-post-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.forum-post-meta strong{color:var(--forum-ink)}.forum-post-meta small{color:var(--forum-muted)}.forum-post-copy p{margin:10px 0 0;line-height:1.65;color:#6f5450;overflow-wrap:anywhere}.forum-locked-note{padding:18px;border-radius:16px;background:#f5f0fb;color:#665783;font-weight:800;text-align:center}.forum-reply-form.disabled textarea,.forum-reply-form.disabled button[type=submit]{opacity:.5;pointer-events:none}.forum-reply-form.disabled{background:#faf8fb}
.forum-preview{padding:24px;display:grid;gap:16px}.forum-preview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.forum-preview-head h2{margin:3px 0 0;color:var(--forum-ink)}.forum-preview-list{display:grid;gap:8px}.forum-preview-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:14px 0;border-top:1px solid #f3e2e6;text-decoration:none;color:inherit}.forum-preview-item:first-child{border-top:0}.forum-preview-item strong{color:var(--forum-ink)}.forum-preview-item span{color:var(--forum-muted);font-size:.87rem}.forum-preview-item b{font-size:.82rem;color:#a35e77;white-space:nowrap}.forum-preview-empty{color:var(--forum-muted);margin:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.forum-games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.forum-nav{display:none}.forum-game-hero{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:720px){.forum-page-shell{width:min(100% - 20px,720px);margin:10px auto 36px}.forum-topbar{top:8px}.forum-back-site{display:none}.forum-intro{padding:24px;display:grid;align-items:start}.forum-intro-actions{justify-content:flex-start}.forum-intro h1{font-size:2.7rem}.forum-games-grid{grid-template-columns:1fr}.forum-game-card{grid-template-columns:112px minmax(0,1fr);min-height:148px}.forum-game-art{min-height:148px}.forum-game-copy{padding:16px}.forum-hub .section-head,.forum-game-toolbar,.forum-form-head,.forum-form-actions,.forum-thread-head-top{align-items:stretch;display:grid}.forum-search input{width:100%}.forum-game-hero{grid-template-columns:1fr}.forum-game-hero-art{min-height:200px;max-height:260px}.forum-game-hero-copy{padding:22px}.forum-thread-row{grid-template-columns:1fr;padding:16px}.forum-thread-side{text-align:left;min-width:0;display:flex;align-items:center;gap:8px}.forum-post{grid-template-columns:38px minmax(0,1fr);padding:16px}.forum-author-avatar{width:38px;height:38px;border-radius:12px}.forum-preview-head{align-items:stretch;display:grid}}

/* FASE 10.3.6 — gerarchia visiva Forum */
.forum-intro .page-title-with-icon{align-items:center}
.forum-intro .page-title-with-icon p{margin-bottom:0}
.forum-game-toolbar .title-with-icon{align-items:center}
.forum-form-head .title-with-icon{align-items:center}
@media(max-width:720px){.forum-intro .page-title-with-icon{align-items:flex-start}.forum-game-toolbar .title-with-icon{align-items:center}}

/* ===== FASE 10.4 — forum responsive e immagini ===== */
.forum-topbar {
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  gap: 12px;
}
.forum-nav { min-width: 0; gap: 3px; }
.forum-nav a { white-space: nowrap; }
.forum-topbar .user-button { justify-self: end; }
.forum-intro, .forum-game-card, .forum-thread-row, .forum-post { min-width: 0; }
.forum-game-copy, .forum-thread-main, .forum-post-copy { min-width: 0; }
.forum-game-copy strong, .forum-thread-title { overflow-wrap: anywhere; }
.forum-game-art img, .forum-game-hero-art img { object-fit: contain; background: #fffaf7; }

@media (max-width: 1100px) {
  .forum-topbar { grid-template-columns: auto minmax(0, 1fr) auto; }
  .forum-topbar .user-button { grid-column: 2; justify-self: end; }
  .forum-back-site { grid-column: 3; }
}

@media (max-width: 720px) {
  .forum-topbar { grid-template-columns: auto minmax(0, 1fr); }
  .forum-topbar .user-button { grid-column: 2; }
  .forum-back-site { display: none; }
  .forum-intro { gap: 18px; }
  .forum-intro h1 { font-size: clamp(2.25rem, 12vw, 3rem); }
  .forum-intro-actions { width: 100%; }
  .forum-intro-actions .button { width: 100%; }
  .forum-global-stat { max-width: 100%; white-space: normal; }
  .forum-game-card { grid-template-columns: 104px minmax(0, 1fr); }
  .forum-game-art { min-height: 138px; }
}

@media (max-width: 430px) {
  .forum-page-shell { width: calc(100% - 12px); }
  .forum-game-card { grid-template-columns: 92px minmax(0, 1fr); }
  .forum-game-copy { padding: 13px; }
  .forum-thread-row, .forum-post { padding: 14px; }
}
