{"product_id":"scheda-a-place-for-all-my-books","title":"A Place for All My Books","description":"\u003cdiv class=\"fg1-wrap\"\u003e\n\n\u003cdiv class=\"fg1-hero\"\u003e\n\n\u003cdiv class=\"fg1-hero-content\"\u003e\n\n\u003cp class=\"fg1-kicker\"\u003eThe FroGames Card\u003c\/p\u003e\n\n\u003cp class=\"fg1-sub\"\u003eYou've found three copies of The Lord of the Rings in three different formats. Now you have to decide: thematic shelf or by size? And in the meantime, Penelope has taken the last Murakami.\u003c\/p\u003e\n\n\u003cdiv class=\"fg1-chips\"\u003e\n\n\u003cspan class=\"fg1-chip fg1-chip--accent\"\u003ePuzzle\u003c\/span\u003e\u003cspan class=\"fg1-chip\"\u003eSmirk \u0026amp; Dagger Games\u003c\/span\u003e\u003cspan class=\"fg1-chip\"\u003eEnglish Edition\u003c\/span\u003e\u003cspan class=\"fg1-chip\"\u003eBibliophile Cozy Game\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-specs-bar\"\u003e\n\n\u003cdiv class=\"fg1-specs\"\u003e\n\n\u003cdiv class=\"fg1-spec\"\u003e\n\n\u003cspan class=\"fg1-spec-icon\"\u003e👥\u003c\/span\u003e \u003cspan class=\"fg1-spec-label\"\u003ePlayers\u003c\/span\u003e \u003cspan class=\"fg1-spec-val\"\u003e1 – 4\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-spec\"\u003e\n\n\u003cspan class=\"fg1-spec-icon\"\u003e⏱️\u003c\/span\u003e \u003cspan class=\"fg1-spec-label\"\u003eDuration\u003c\/span\u003e \u003cspan class=\"fg1-spec-val\"\u003e40–60 min\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-spec\"\u003e\n\n\u003cspan class=\"fg1-spec-icon\"\u003e🎂\u003c\/span\u003e \u003cspan class=\"fg1-spec-label\"\u003eAge\u003c\/span\u003e \u003cspan class=\"fg1-spec-val\"\u003e10+ years\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-spec\"\u003e\n\n\u003cspan class=\"fg1-spec-icon\"\u003e🏢\u003c\/span\u003e \u003cspan class=\"fg1-spec-label\"\u003ePublisher\u003c\/span\u003e \u003cspan class=\"fg1-spec-val\"\u003eSmirk \u0026amp; Dagger Games\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-spec\"\u003e\n\n\u003cspan class=\"fg1-spec-icon\"\u003e⚖️\u003c\/span\u003e \u003cspan class=\"fg1-spec-label\"\u003eWeight\u003c\/span\u003e \u003cspan class=\"fg1-spec-val\"\u003eMedium-light (2.2)\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-spec\"\u003e\n\n\u003cspan class=\"fg1-spec-icon\"\u003e🎲\u003c\/span\u003e \u003cspan class=\"fg1-spec-label\"\u003eMechanic\u003c\/span\u003e \u003cspan class=\"fg1-spec-val\"\u003ePattern building + worker placement\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv style=\"background: #160a02; padding: 13px 24px; display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: center; border-top: 1px solid rgba(255,255,255,0.06);\"\u003e\n\u003cspan style=\"font-family: sans-serif; font-size: 0.62rem; font-weight: bold; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.45);\"\u003eThe formula\u003c\/span\u003e\u003cspan style=\"font-family: sans-serif; font-size: 0.92rem; font-weight: 800; color: #fff;\"\u003eSpatial Tetris \u003cspan style=\"color: rgba(255,255,255,0.35);\"\u003e×\u003c\/span\u003e light worker placement \u003cspan style=\"color: rgba(255,255,255,0.35);\"\u003e×\u003c\/span\u003e visual satisfaction\u003c\/span\u003e\u003cspan style=\"font-family: sans-serif; font-size: 0.78rem; font-weight: 800; color: #1a0800; background: #FFB800; padding: 5px 13px; border-radius: 50px; max-width: 100%; line-height: 1.4;\"\u003e✋ Only here: You admire your shelves to regenerate energy\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-body\"\u003e\n\n\u003cdiv class=\"fg1-intro-grid\"\u003e\n\n\u003cdiv class=\"fg1-intro-text\"\u003e\n\n\u003cp class=\"fg1-label\"\u003eWHAT IT'S ABOUT\u003c\/p\u003e\n\n\u003ch3 class=\"fg1-h3\"\u003eThe game for those who have always dreamed of tidying up the perfect bookshelf\u003c\/h3\u003e\n\n\u003cp class=\"fg1-p\"\u003e\u003cstrong\u003eAlex Cutler\u003c\/strong\u003e and \u003cstrong\u003eMichael Mihealsick\u003c\/strong\u003e have designed a spatial puzzle disguised as a bibliophile simulator. Illustrations by \u003cstrong\u003eNaomi Lord\u003c\/strong\u003e transform piles of books into desirable objects, with covers that look like they came from an independent bookstore. The game won the \u003cstrong\u003eMensa Select\u003c\/strong\u003e, an award given to games that reward applied intelligence without taking themselves too seriously.\u003c\/p\u003e\n\n\u003cp class=\"fg1-p\"\u003eEach round you visit village locations to collect books, then return home and organize them in the rooms of your apartment. Each completed project gives you points and \u003cstrong\u003erecharges your energy\u003c\/strong\u003e, which you then spend to go out and look for more books. The puzzle lies in fitting stacks of different sizes to complete multiple objectives simultaneously, maximizing every moment of contemplative satisfaction.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-intro-side\"\u003e\n\n\u003cp class=\"fg1-quote-header\"\u003eWhat they say abroad\u003c\/p\u003e\n\n\u003cdiv class=\"fg1-quote\" itemscope=\"\" itemtype=\"https:\/\/schema.org\/Review\"\u003e\n\n\u003cp class=\"fg1-quote-text\" itemprop=\"reviewBody\"\u003e\"A cozy puzzler that turns the mundane act of shelving books into something genuinely satisfying\"\u003c\/p\u003e\n\n\u003cp class=\"fg1-quote-transl\"\u003eA relaxing puzzle that turns the daily act of arranging books into something genuinely satisfying\u003c\/p\u003e\n\n\u003cp class=\"fg1-quote-source\"\u003e— \u003cspan itemprop=\"author\" itemscope=\"\" itemtype=\"https:\/\/schema.org\/Organization\"\u003e\u003cspan itemprop=\"name\"\u003eMeeple Mountain\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-quote fg1-quote--dark\" itemscope=\"\" itemtype=\"https:\/\/schema.org\/Review\"\u003e\n\n\u003cp class=\"fg1-quote-text\" itemprop=\"reviewBody\"\u003eThis is a game for those who love to see order where there was once chaos. Every completed shelf gives that dopamine rush that those who spend hours reorganizing their board game collection by publisher, year, BGG weight know well. It's therapeutic.\u003c\/p\u003e\n\n\u003cp class=\"fg1-quote-source\"\u003e— \u003cspan itemprop=\"author\" itemscope=\"\" itemtype=\"https:\/\/schema.org\/Organization\"\u003e\u003cspan itemprop=\"name\"\u003eFroGames\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-fs\"\u003e\n\n\u003cdiv class=\"fg1-fs-header\"\u003e\n\n\u003cdiv class=\"fg1-fs-brand\"\u003e\n\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/FROG_FAVICON.webp?v=1774174794\" alt=\"FroGames\" class=\"fg1-fs-frog-img\"\u003e\n\u003cdiv\u003e\n\n\u003cspan class=\"fg1-fs-brand-label\"\u003eFrogScore · frogames.business\u003c\/span\u003e\n\u003cp class=\"fg1-fs-game-name\"\u003eA Place for All My Books\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cspan class=\"fg1-fs-cat\" style=\"background: #eaf3de; border-color: #80b050; color: #2a5010;\"\u003eStrategy\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-fs-body\"\u003e\n\n\u003cdiv class=\"fg1-fs-radar-panel\"\u003e\n\n\u003csvg id=\"fg1-fs-svg\" viewbox=\"0 0 320 320\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"overflow: visible;\"\u003e\u003c\/svg\u003e\n\u003cdiv class=\"fg1-fs-tip\" id=\"fg1-fs-tip\"\u003e\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-fs-info\"\u003e\n\n\u003cspan class=\"fg1-fs-feel-lbl\"\u003eThe experience\u003c\/span\u003e\n\u003cdiv class=\"fg1-fs-feeling\"\u003e\n\n\u003cspan class=\"fg1-fs-feel-tag\"\u003eRelaxing\u003c\/span\u003e\u003cspan class=\"fg1-fs-feel-tag\"\u003eSatisfying\u003c\/span\u003e\u003cspan class=\"fg1-fs-feel-tag\"\u003eContemplative\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\u003cspan class=\"fg1-fs-section-label\"\u003eFor whom it is\u003c\/span\u003e\n\u003cdiv class=\"fg1-fs-targets\"\u003e\n\n\u003cdiv class=\"fg1-fs-target fg1-fs-si\"\u003e\n\n\u003cspan\u003e🎲\u003c\/span\u003eFamily game\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-fs-target fg1-fs-si\"\u003e\n\n\u003cspan\u003e🌱\u003c\/span\u003eGateway\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-fs-target fg1-fs-no\"\u003e\n\n\u003cspan\u003e🍕\u003c\/span\u003eParty\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-fs-target fg1-fs-no\"\u003e\n\n\u003cspan\u003e🧠\u003c\/span\u003eHeavy game\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-fs-verdict\"\u003e\n\n\u003cdiv class=\"fg1-fs-verdict-title\"\u003eIn short\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-fs-verdict-text\"\u003eWhy we like it: it's a puzzle that rewards planning without ever making you feel stressed, and each completed shelf gives immediate visual satisfaction. The collect-organize-contemplate loop is hypnotic. Flaws but not deal-breakers: with four players, it can feel like everyone is playing on their own, and the most competitive might find it too relaxed. But if you love spatial puzzles and the idea of building something beautiful while playing, this is your game.\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-fs-solo\"\u003e\n\n\u003cdiv class=\"fg1-fs-solo-row\"\u003e\n\n\u003cspan class=\"fg1-fs-solo-icon\"\u003e🧘\u003c\/span\u003e\n\u003cdiv class=\"fg1-fs-solo-text\"\u003e\n\n\u003cspan class=\"fg1-fs-solo-label\"\u003eSolo mode · Official\u003c\/span\u003e \u003cspan class=\"fg1-fs-solo-stars\"\u003e★★★★☆\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp class=\"fg1-fs-solo-note\"\u003eYou play against \u003cstrong\u003ePenelope Eveready\u003c\/strong\u003e, an automated opponent who collects books following a dedicated deck of cards. The solo experience is complete and maintains the tension of competing for resources, only missing the pleasure of commenting together on each other's shelves at the end of the game.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-fs-footer\"\u003e\n\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/FROG_FAVICON.webp?v=1774174794\" alt=\"FroGames\" class=\"fg1-fs-footer-frog\"\u003e FrogScore · FroGames editorial rating · based on rules, international reviews, and play sessions\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cscript\u003e\n    (function(){\n      var PI2=Math.PI*2;\n      var dims=[{\"label\": \"Rigiocabilità\", \"value\": 4, \"note\": \"Obiettivi variabili e setup modulare cambiano il puzzle ogni partita\"}, {\"label\": \"Strategia\", \"value\": 4, \"note\": \"Ottimizzare l'ordine delle azioni e l'incastro delle pile richiede pianificazione\"}, {\"label\": \"Complessità\", \"value\": 2, \"note\": \"Regole in 10 minuti, la sfida è nel puzzle spaziale non nelle meccaniche\"}, {\"label\": \"Interazione\", \"value\": 2, \"note\": \"Indiretta: si compete per libri nelle location comuni, ma ognuno costruisce il proprio appartamento\"}, {\"label\": \"Fortuna\", \"value\": 2, \"note\": \"Pesca libri dalle location, ma hai sempre scelte multiple e puoi pianificare\"}, {\"label\": \"Tensione\", \"value\": 2, \"note\": \"Atmosfera cozy, la pressione viene solo dal voler completare tutto prima degli altri\"}];\n      var accent='#2E6B0A';\n      var VB=320,CX=160,CY=160,R=74;\n      var n=dims.length,step=PI2\/n,off=-Math.PI\/2;\n      var svg=document.getElementById('fg1-fs-svg');\n      var tip=document.getElementById('fg1-fs-tip');\n      if(!svg) return;\n      var ns='http:\/\/www.w3.org\/2000\/svg';\n      function pt(r,i){return[CX+r*Math.cos(off+i*step),CY+r*Math.sin(off+i*step)];}\n      function el(tag,attrs){\n        var e=document.createElementNS(ns,tag);\n        Object.keys(attrs).forEach(function(k){e.setAttribute(k,attrs[k]);});\n        return e;\n      }\n      var st=document.createElement('style');\n      st.textContent='@keyframes fg1-draw{to{stroke-dashoffset:0}}@keyframes fg1-fade{to{opacity:1}}';\n      document.head.appendChild(st);\n      for(var ring=1;ring\u003c=5;ring++){\n        var rr=R*(ring\/5);\n        var pts=dims.map(function(_,i){var p=pt(rr,i);return p[0].toFixed(1)+','+p[1].toFixed(1);}).join(' ');\n        svg.appendChild(el('polygon',{points:pts,fill:'none',stroke:ring===5?'#c0b8b0':'#ddd8d0','stroke-width':ring===5?'1':'0.5'}));\n      }\n      dims.forEach(function(_,i){\n        var p=pt(R,i);\n        svg.appendChild(el('line',{x1:CX,y1:CY,x2:p[0].toFixed(1),y2:p[1].toFixed(1),stroke:'#d0c8c0','stroke-width':'0.5'}));\n      });\n      var dpts=dims.map(function(d,i){var p=pt(R*(d.value\/5),i);return p[0].toFixed(1)+','+p[1].toFixed(1);}).join(' ');\n      var perim=dims.reduce(function(acc,d,i){\n        var p1=pt(R*(d.value\/5),i),p2=pt(R*(dims[(i+1)%n].value\/5),(i+1)%n);\n        return acc+Math.sqrt(Math.pow(p2[0]-p1[0],2)+Math.pow(p2[1]-p1[1],2));\n      },0);\n      var shape=el('polygon',{points:dpts,fill:accent+'1a',stroke:accent,'stroke-width':'2.5','stroke-linejoin':'round'});\n      shape.style.cssText='stroke-dasharray:'+perim.toFixed(0)+';stroke-dashoffset:'+perim.toFixed(0)+';animation:fg1-draw 0.9s ease-out 0.1s forwards';\n      svg.appendChild(shape);\n      dims.forEach(function(d,i){\n        var p=pt(R*(d.value\/5),i);\n        var angle=off+i*step;\n        var hit=el('circle',{cx:p[0].toFixed(1),cy:p[1].toFixed(1),r:'10',fill:'transparent',cursor:'pointer'});\n        (function(idx){\n          hit.addEventListener('mouseenter',function(e){\n            tip.innerHTML='\u003cstrong\u003e'+dims[idx].label+' '+dims[idx].value+'\/5\u003c\/strong\u003e\u003cbr\u003e'+dims[idx].note;\n            tip.style.display='block';\n            var rect=svg.parentElement.getBoundingClientRect();\n            var ex=e.clientX-rect.left, ey=e.clientY-rect.top;\n            tip.style.left=Math.min(ex+12,rect.width-220)+'px';\n            tip.style.top=Math.max(ey-55,4)+'px';\n          });\n          hit.addEventListener('mouseleave',function(){tip.style.display='none';});\n        })(i);\n        svg.appendChild(hit);\n        var c=el('circle',{cx:p[0].toFixed(1),cy:p[1].toFixed(1),r:'4.5',fill:accent,stroke:'white','stroke-width':'2'});\n        c.style.cssText='opacity:0;animation:fg1-fade 0.3s ease-out '+(0.8+i*0.07).toFixed(2)+'s forwards';\n        svg.appendChild(c);\n        var nd=R*(d.value\/5)+15;\n        var nx=CX+nd*Math.cos(angle),ny=CY+nd*Math.sin(angle);\n        var vt=el('text',{x:nx.toFixed(1),y:(ny+1).toFixed(1),'text-anchor':'middle','dominant-baseline':'middle','font-size':'10','font-weight':'800',fill:accent,'font-family':'-apple-system,sans-serif'});\n        vt.textContent=d.value;\n        vt.style.cssText='opacity:0;animation:fg1-fade 0.3s ease-out '+(0.85+i*0.07).toFixed(2)+'s forwards';\n        svg.appendChild(vt);\n      });\n      dims.forEach(function(d,i){\n        var angle=off+i*step;\n        var lx=CX+(R+40)*Math.cos(angle),ly=CY+(R+40)*Math.sin(angle);\n        var anchor='middle';\n        if(Math.cos(angle)\u003e0.2) anchor='start';\n        else if(Math.cos(angle)\u003c-0.2) anchor='end';\n        var dy=Math.sin(angle)\u003e0.6?7:Math.sin(angle)\u003c-0.6?-5:0;\n        var isHi=d.value\u003e=4;\n        var t=el('text',{x:lx.toFixed(1),y:(ly+dy).toFixed(1),'text-anchor':anchor,'dominant-baseline':'middle','font-size':isHi?'12':'11','font-weight':'700',fill:'#1a1208','font-family':'-apple-system,sans-serif'});\n        t.textContent=d.label;\n        svg.appendChild(t);\n      });\n    })();\n    \u003c\/script\u003e\n\u003cdiv class=\"fg1-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-section-pad\"\u003e\n\n\u003cp class=\"fg1-label\"\u003eWhat's in the box\u003c\/p\u003e\n\n\u003ch3 class=\"fg1-h3\"\u003eThe materials that make up your book-filled apartment\u003c\/h3\u003e\n\n\u003cdiv class=\"fg1-cards\"\u003e\n\n\u003cdiv class=\"fg1-card\"\u003e\n\n\u003cspan class=\"fg1-card-icon\"\u003e📚\u003c\/span\u003e\n\u003ch4 class=\"fg1-card-name\"\u003eBook Tiles\u003c\/h4\u003e\n\n\u003cp class=\"fg1-card-desc\"\u003eStacks of books in different sizes and colors, to fit into the shelves of your rooms. Each book has an illustrated cover that makes each stack recognizable and desirable.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-card\"\u003e\n\n\u003cspan class=\"fg1-card-icon\"\u003e🏠\u003c\/span\u003e\n\u003ch4 class=\"fg1-card-name\"\u003eApartment Boards\u003c\/h4\u003e\n\n\u003cp class=\"fg1-card-desc\"\u003eEach player has different rooms where they organize books: living room, study, bedroom. Completing specific patterns in each room unlocks projects and recharges energy.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-card\"\u003e\n\n\u003cspan class=\"fg1-card-icon\"\u003e🎯\u003c\/span\u003e\n\u003ch4 class=\"fg1-card-name\"\u003eProject Cards\u003c\/h4\u003e\n\n\u003cp class=\"fg1-card-desc\"\u003ePersonal objectives that require specific book configurations. Completing them gives you victory points and that zen satisfaction of bringing order to chaos.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-card\"\u003e\n\n\u003cspan class=\"fg1-card-icon\"\u003e🗺️\u003c\/span\u003e\n\u003ch4 class=\"fg1-card-name\"\u003eVillage Board\u003c\/h4\u003e\n\n\u003cp class=\"fg1-card-desc\"\u003eThe common locations where you collect books: bookstore, used book market, library. Simple but crucial placement, because the best books go quickly.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"fg1-section-pad fg1-rulebook-pad\"\u003e\u003ca class=\"fg1-rulebook\" href=\"https:\/\/boardgamegeek.com\/filepage\/291968\" rel=\"nofollow noopener\" target=\"_blank\"\u003e \u003cspan class=\"fg1-rulebook-icon\"\u003e📕\u003c\/span\u003e \u003cspan class=\"fg1-rulebook-text\"\u003e \u003cspan class=\"fg1-rulebook-label\"\u003eOfficial Rulebook (PDF)\u003c\/span\u003e \u003cspan class=\"fg1-rulebook-meta\"\u003eA Place for All My Books Rules 1.0 · on BoardGameGeek\u003c\/span\u003e \u003c\/span\u003e \u003cspan class=\"fg1-rulebook-arrow\"\u003e↗\u003c\/span\u003e \u003c\/a\u003e\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\u003cstyle\u003e\n.fg1-wrap, .fg1-wrap * { box-sizing: border-box; margin: 0; padding: 0; }\n.fg1-wrap {\n  font-family: Georgia, 'Times New Roman', serif;\n  border-radius: 24px;\n  overflow: hidden;\n  box-shadow: 0 20px 60px rgba(0,0,0,0.32);\n  max-width: 1200px;\n  margin-left: auto;\n  margin-right: auto;\n  background: #1a1a1a;\n}\n.fg1-hero {\n  background: linear-gradient(135deg, #1a1a1a 0%, #222222 50%, #1a1a1a 100%);\n  padding: 32px 26px 36px;\n  position: relative;\n  overflow: hidden;\n}\n.fg1-hero::before {\n  content: \"\";\n  position: absolute;\n  inset: 0;\n  background: radial-gradient(ellipse at top right, rgba(46,107,10,0.08) 0%, transparent 60%);\n  pointer-events: none;\n}\n.fg1-hero-content { position: relative; z-index: 2; }\n.fg1-kicker { display: block; color: #FFB800; font-family: sans-serif; font-size: 0.7rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; margin-bottom: 10px; }\n.fg1-sub { color: rgba(255,255,255,0.88); font-family: Georgia, serif; font-size: 1rem; font-style: italic; line-height: 1.55; max-width: 580px; margin-bottom: 18px; }\n.fg1-chips { display: flex; flex-wrap: wrap; gap: 7px; }\n.fg1-chip { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.2); color: #fff; font-family: sans-serif; padding: 4px 12px; border-radius: 50px; font-size: 0.78rem; font-weight: 600; }\n.fg1-chip--accent { background: #2E6B0A; border-color: #2E6B0A; }\n.fg1-specs-bar { background: #160a02; padding: 0 24px; border-top: 1px solid rgba(255,255,255,0.06); }\n.fg1-specs { display: grid; grid-template-columns: repeat(3, 1fr); }\n.fg1-spec { padding: 13px 10px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 2px; border-right: 1px solid rgba(255,255,255,0.07); border-bottom: 1px solid rgba(255,255,255,0.07); }\n.fg1-spec:nth-child(3n) { border-right: none; }\n.fg1-spec:nth-last-child(-n+3) { border-bottom: none; }\n.fg1-spec-icon { font-size: 1.2rem; }\n.fg1-spec-label { color: rgba(255,255,255,0.4); font-family: sans-serif; font-size: 0.6rem; text-transform: uppercase; letter-spacing: 1px; }\n.fg1-spec-val { color: #fff; font-family: sans-serif; font-size: 0.84rem; font-weight: 800; }\n.fg1-body { background: #F5EDD8; }\n.fg1-intro-grid { display: grid; grid-template-columns: 1fr; gap: 26px; padding: 36px 28px 8px; }\n.fg1-label { display: block; font-family: sans-serif; font-size: 0.68rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: #2E6B0A; margin-bottom: 7px; }\n.fg1-h3 { font-size: clamp(1.4rem, 2.5vw, 2.1rem); font-weight: 900; color: #1a0800; line-height: 1.15; margin-bottom: 16px; }\n.fg1-p { font-family: sans-serif; font-size: 0.95rem; color: #3d2810; margin-bottom: 13px; line-height: 1.65; max-width: 700px; }\n.fg1-quote-header { font-family: sans-serif; font-size: 0.68rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: #2E6B0A; margin-bottom: 12px; }\n.fg1-quote { background: #1a0800; border-radius: 14px; padding: 16px 18px; margin-bottom: 12px; border-left: 4px solid #FFB800; }\n.fg1-quote--dark { background: #3a0a00; }\n.fg1-quote-text { color: #fff; font-style: italic; font-size: 0.87rem; line-height: 1.6; margin-bottom: 6px; font-family: sans-serif; }\n.fg1-quote-transl { color: rgba(255,255,255,0.48); font-family: sans-serif; font-size: 0.76rem; line-height: 1.5; margin-bottom: 7px; font-style: italic; }\n.fg1-quote-source { color: rgba(255,255,255,0.43); font-family: sans-serif; font-size: 0.72rem; font-weight: 700; }\n.fg1-divider { height: 1px; background: #d4c0a0; margin: 32px 28px 0; }\n.fg1-fs { background:#fff; border-top:1px solid #e0d8cc; border-bottom:1px solid #e0d8cc; }\n.fg1-fs-header { padding:14px 20px 13px; background:#fff; border-bottom:1px solid #e8e2da; display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }\n.fg1-fs-brand { display:flex; align-items:center; gap:9px; }\n.fg1-fs-frog-img { width:28px; height:28px; object-fit:contain; flex-shrink:0; }\n.fg1-fs-footer-frog { width:16px; height:16px; object-fit:contain; vertical-align:middle; margin-right:2px; }\n.fg1-fs-brand-label { display:block; font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; }\n.fg1-fs-game-name { font-family:sans-serif; font-size:14px; font-weight:700; color:#1a1208; margin-top:2px; }\n.fg1-fs-cat { font-family:sans-serif; font-size:10px; padding:3px 11px; border-radius:50px; font-weight:700; border:1.5px solid; white-space:nowrap; }\n.fg1-fs-body { display:grid; grid-template-columns:1fr; background:#f7f4ef; }\n.fg1-fs-radar-panel { padding:20px 16px; display:flex; justify-content:center; background:#f7f4ef; position:relative; }\n.fg1-fs-radar-panel svg { width:100%; max-width:270px; height:auto; display:block; }\n.fg1-fs-tip { display:none; position:absolute; background:#1a1208; color:rgba(255,255,255,0.92); font-family:sans-serif; font-size:11px; line-height:1.55; padding:8px 12px; border-radius:9px; z-index:20; max-width:210px; box-shadow:0 4px 18px rgba(0,0,0,0.22); pointer-events:none; }\n.fg1-fs-info { padding:16px 18px 18px; background:#f7f4ef; border-top:1px solid #e8e2da; }\n.fg1-fs-feel-lbl { display:block; font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; margin-bottom:9px; }\n.fg1-fs-feeling { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:16px; }\n.fg1-fs-feel-tag { font-family:Georgia,serif; font-size:13px; font-style:italic; color:#3d2810; padding:5px 14px; background:#fff; border-radius:7px; border:1px solid #d8d0c4; }\n.fg1-fs-section-label { display:block; font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; margin-bottom:10px; }\n.fg1-fs-targets { display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:7px; margin-bottom:16px; }\n.fg1-fs-target { display:flex; align-items:center; gap:6px; padding:6px 10px; border-radius:10px; border:1px solid; font-family:sans-serif; font-size:11px; font-weight:600; }\n.fg1-fs-target span { font-size:14px; flex-shrink:0; }\n.fg1-fs-si { background:#fff; border-color:#c8c0b0; color:#2a1a08; }\n.fg1-fs-no { background:transparent; border-color:#e0d8d0; color:#b8a898; opacity:.45; text-decoration:line-through; }\n.fg1-fs-verdict { background:#fff; border-radius:10px; padding:12px 14px; border:1px solid #e0d8cc; }\n.fg1-fs-verdict-title { font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; margin-bottom:5px; }\n.fg1-fs-verdict-text { font-family:sans-serif; font-size:12px; color:#3d2810; line-height:1.65; }\n.fg1-fs-solo { background:#f0ece4; border-top:1px solid #e0d8cc; padding:14px 18px; }\n.fg1-fs-solo-row { display:flex; align-items:center; gap:12px; margin-bottom:8px; }\n.fg1-fs-solo-icon { font-size:1.4rem; flex-shrink:0; }\n.fg1-fs-solo-text { display:flex; flex-direction:column; gap:2px; flex-grow:1; }\n.fg1-fs-solo-label { font-family:sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#6b5e48; }\n.fg1-fs-solo-stars { font-family:sans-serif; font-size:14px; letter-spacing:2px; color:#2E6B0A; line-height:1; }\n.fg1-fs-solo-note { font-family:sans-serif; font-size:12px; color:#3d2810; line-height:1.65; }\n.fg1-fs-footer { padding:9px 20px; background:#eeeae4; border-top:1px solid #e0d8cc; font-family:sans-serif; font-size:11px; color:#6b5e48; line-height:1.5; }\n.fg1-section-pad { padding: 32px 28px 8px; border-top: 0 !important; border-bottom: 0 !important; box-shadow: none !important; }\n.fg1-cards { display: grid; grid-template-columns: 1fr; gap: 11px; margin-top: 16px; }\n.fg1-card { background: #fff; border-radius: 14px; padding: 16px 18px; border: 1px solid #e0ceb0; box-shadow: 0 2px 10px rgba(0,0,0,0.05); transition: transform 0.2s ease, box-shadow 0.2s ease; }\n.fg1-card:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,0.09); }\n.fg1-card-icon { font-size: 1.6rem; display: block; margin-bottom: 7px; }\n.fg1-card-name { font-size: 0.95rem; font-weight: 900; color: #2E6B0A; margin-bottom: 5px; }\n.fg1-card-desc { font-family: sans-serif; font-size: 0.85rem; color: #3d2810; line-height: 1.55; }\n.fg1-sleeve-toggle { background: #fff; border-radius: 14px; border: 1px solid #e0ceb0; box-shadow: 0 2px 10px rgba(0,0,0,0.05); overflow: hidden; }\n.fg1-sleeve-summary { list-style: none; cursor: pointer; padding: 16px 20px; display: flex; align-items: center; gap: 14px; font-family: sans-serif; user-select: none; transition: background 0.2s ease; }\n.fg1-sleeve-summary::-webkit-details-marker { display: none; }\n.fg1-sleeve-summary:hover { background: #faf2e2; }\n.fg1-sleeve-summary-icon { font-size: 1.5rem; flex-shrink: 0; }\n.fg1-sleeve-summary-text { flex-grow: 1; display: flex; flex-direction: column; gap: 2px; }\n.fg1-sleeve-summary-label { font-size: 0.95rem; font-weight: 800; color: #1a0800; }\n.fg1-sleeve-summary-count { font-size: 0.78rem; color: #7a6040; font-weight: 500; }\n.fg1-sleeve-summary-arrow { font-size: 0.75rem; color: #2E6B0A; transition: transform 0.25s ease; flex-shrink: 0; }\n.fg1-sleeve-toggle[open] .fg1-sleeve-summary-arrow { transform: rotate(180deg); }\n.fg1-sleeve-toggle[open] .fg1-sleeve-summary { border-bottom: 1px solid #f0e4ce; }\n.fg1-sleeve-body { padding: 16px 20px 20px; }\n.fg1-sleeve-intro { font-family: sans-serif; font-size: 0.9rem; color: #3d2810; line-height: 1.6; margin: 0 0 14px 0; max-width: 680px; }\n.fg1-sleeve-table { width: 100%; max-width: 420px; border-collapse: collapse; background: #fff; border-radius: 10px; overflow: hidden; border: 1px solid #e8dcba; font-family: sans-serif; }\n.fg1-sleeve-table th { background: #2E6B0A; color: #fff; text-transform: uppercase; letter-spacing: 1px; font-size: 0.72rem; font-weight: 700; padding: 10px 14px; text-align: left; }\n.fg1-sleeve-table td { padding: 10px 14px; border-bottom: 1px solid #f0e4ce; font-size: 0.9rem; color: #3d2810; }\n.fg1-sleeve-table tbody tr:last-child td { border-bottom: none; }\n.fg1-sleeve-dim { font-weight: 600; }\n.fg1-sleeve-qty { font-weight: 800; text-align: right; color: #2E6B0A; }\n.fg1-sleeve-total td { background: #faf2e2; font-weight: 900; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.5px; }\n.fg1-sleeve-total .fg1-sleeve-qty { color: #1a0800; }\n.fg1-rulebook-pad { padding-top: 18px; border-top: 0 !important; border-bottom: 0 !important; box-shadow: none !important; }\n\/* Card cliccabile: border shorthand + accent verde a sinistra (etichetta \"risorsa speciale\").\n   Niente 4 border separati: il border-bottom da solo si leggeva come underline. *\/\na.fg1-rulebook,\na.fg1-rulebook:link,\na.fg1-rulebook:visited,\na.fg1-rulebook:hover,\na.fg1-rulebook:focus,\na.fg1-rulebook:active {\n  text-decoration: none !important;\n  border: 1px solid #e8dcba !important;\n  border-left: 4px solid #2E6B0A !important;\n  box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;\n  outline: none !important;\n  background-image: none !important;\n}\n.fg1-rulebook { display: flex; align-items: center; gap: 14px; background: #fffaf0; border-radius: 12px; padding: 14px 18px; color: #1a0800; transition: background 0.2s ease, transform 0.2s ease; }\n.fg1-rulebook:hover { background: #faf0d8 !important; transform: translateX(2px); }\n\/* Reset preventivo su figli e pseudo-elementi: alcuni temi Shopify (Concept, Dawn-derived,\n   Impulse, Prestige) iniettano underline animate via ::before\/::after con background-image\n   linear-gradient. Vanno nuke esplicitamente. *\/\n.fg1-rulebook *,\n.fg1-rulebook *::before,\n.fg1-rulebook *::after {\n  text-decoration: none !important;\n  border: 0 !important;\n  box-shadow: none !important;\n  background: transparent !important;\n  background-image: none !important;\n}\n.fg1-rulebook::before,\n.fg1-rulebook::after {\n  display: none !important;\n  content: none !important;\n}\n.fg1-rulebook-icon { font-size: 1.6rem; flex-shrink: 0; }\n.fg1-rulebook-text { display: flex; flex-direction: column; flex-grow: 1; gap: 2px; }\n.fg1-rulebook-label { font-weight: 800; font-size: 0.95rem; color: #1a0800; }\n.fg1-rulebook-meta { font-size: 0.78rem; color: #6b5a3a; }\n.fg1-rulebook-arrow { font-size: 1.1rem; color: #2E6B0A; font-weight: 700; flex-shrink: 0; }\n.fg1-closing { background: #1a0800; padding: 26px 28px; border-top: 3px solid #FFB800; }\n.fg1-closing-text { font-family: Georgia, serif; font-size: 1.05rem; font-style: italic; color: rgba(255,255,255,0.88); text-align: center; line-height: 1.6; }\n@media screen and (min-width: 600px) {\n  .fg1-specs { grid-template-columns: repeat(6, 1fr); }\n  .fg1-spec { border-bottom: none; }\n  .fg1-spec:nth-child(3n) { border-right: 1px solid rgba(255,255,255,0.07); }\n  .fg1-spec:last-child { border-right: none; }\n  .fg1-cards { grid-template-columns: repeat(2, 1fr); }\n  .fg1-fs-body { grid-template-columns: 220px 1fr; }\n  .fg1-fs-radar-panel { border-top: none; border-right: 1px solid #e8e2da; }\n  .fg1-fs-info { border-top: none; }\n}\n@media screen and (min-width: 900px) {\n  .fg1-hero { padding: 40px 36px 44px; }\n  .fg1-intro-grid { grid-template-columns: 3fr 2fr; align-items: start; padding: 40px 36px 8px; }\n  .fg1-cards { grid-template-columns: repeat(4, 1fr); }\n  .fg1-divider { margin-left: 36px; margin-right: 36px; }\n  .fg1-section-pad { padding: 36px 36px 8px; }\n  .fg1-closing { padding: 28px 36px; }\n  .fg1-fs-body { grid-template-columns: 260px 1fr; }\n  .fg1-fs-radar-panel svg { max-width: 260px; }\n}\n\u003c\/style\u003e","brand":"Smirk \u0026 Dagger Games","offers":[{"title":"Default Title","offer_id":54407020118343,"sku":null,"price":49.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0887\/8905\/7863\/files\/APlaceforallmyBooks00_87fa1b15-fe12-45bf-94ff-24a7360c3595.webp?v=1784805942","url":"https:\/\/frogames.business\/en\/products\/scheda-a-place-for-all-my-books","provider":"FroGames","version":"1.0","type":"link"}