{"compiledCode":"\"use strict\";Object.defineProperty(exports, \"__esModule\", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _react = require('react'); var _react2 = _interopRequireDefault(_react);\n\n function TroubleshootingPage() {\n  const d = {\"h1\": \"Pizza troubleshooting\", \"intro\": \"Find the symptom you are actually seeing, read the causes worth testing, run the test that identifies yours, and go to the page that explains the variable. A cause without a test is a guess, so every cause here has one.\", \"primaryCtas\": [{\"label\": \"How to log a bake\", \"href\": \"/blog/how-to-log-a-bake\"}, {\"label\": \"Dough and fermentation\", \"href\": \"/dough\"}], \"inShort\": \"This hub is organised by symptom rather than by ingredient. Each defect lists its likely causes in the order you can most directly test them, and links to the page explaining the underlying variable. The governing rule is to change one variable at a time.\", \"whoFor\": [\"Bakers whose pizza is nearly right and who cannot identify what is spoiling it\", \"Anyone who has been given four contradictory explanations for the same defect\", \"People mid-bake who need an answer now\"], \"whenToUse\": [\"Right after a bake, while you still remember the conditions\", \"Before you change your recipe, so you change the thing that is actually wrong\", \"Before you buy equipment to solve a problem that may not be an equipment problem\"], \"sections\": [{\"heading\": \"The rule that makes diagnosis possible\", \"paragraphs\": [\"Change one variable at a time. If you raise hydration, extend the ferment, and move the oven rack in the same bake, you learn nothing regardless of how it turns out.\", \"Write down what you changed. This is unglamorous and it is the single fastest route to better pizza.\"], \"bullets\": [{\"text\": \"How to log a bake so you can repeat it\", \"href\": \"/blog/how-to-log-a-bake\"}]}, {\"heading\": \"Find your symptom\", \"table\": {\"head\": [\"What you are seeing\", \"Causes to test\", \"Where to go\"], \"rows\": [[\"Raw, gummy layer under the sauce\", \"Bottom heat, hydration beyond what the bake handles, moisture load, bake too short and too hot, under-fermented dough\", \"The gum line\"], [\"Pale, floppy base\", \"Surface not at temperature, wrong surface for the oven, no recovery between bakes, contact broken by dusting flour\", \"Pale and floppy base\"], [\"Burnt rim over a raw middle\", \"Deck and dome temperatures mismatched\", \"Burnt rim, raw middle\"], [\"Dough springs back or tears\", \"Dough too cold, insufficient rest after balling, gluten over- or under-developed\", \"Dough won't stretch\"], [\"Pizza sticks to the peel or folds on launch\", \"Dwell time on the peel, wrong dusting medium, launch motion\", \"Launch failures\"], [\"Slack, sticky dough with no structure\", \"Over-proofed, or warmer than you think\", \"Over-proofed dough\"], [\"Soggy vegetable pizza\", \"Water released faster than the bake can drive it off\", \"Wet vegetables\"], [\"No leopard spotting\", \"Usually a bake profile your oven cannot produce, not a fault\", \"Leoparding explained\"]]}, \"bullets\": [{\"text\": \"The gum line: five causes of a raw layer under your sauce\", \"href\": \"/blog/pizza-gum-line-causes\"}, {\"text\": \"Why your pizza base is pale and floppy\", \"href\": \"/blog/pale-floppy-pizza-base\"}, {\"text\": \"Burnt rim, raw middle: why your oven is cooking unevenly\", \"href\": \"/blog/burnt-rim-raw-middle\"}, {\"text\": \"Why your pizza dough won't stretch\", \"href\": \"/blog/why-pizza-dough-wont-stretch\"}, {\"text\": \"Launch failures and the peel technique that fixes most of them\", \"href\": \"/blog/pizza-launch-failures\"}, {\"text\": \"Over-proofed dough: how to tell, and whether it can be saved\", \"href\": \"/blog/over-proofed-pizza-dough\"}, {\"text\": \"Why wet vegetables ruin a pizza\", \"href\": \"/blog/wet-vegetables-on-pizza\"}, {\"text\": \"Leoparding: what causes it and whether you should want it\", \"href\": \"/blog/leoparding-explained\"}]}, {\"heading\": \"How to order causes\", \"paragraphs\": [\"Most troubleshooting advice lists possible causes as equals, which leaves you testing the rare one first. This hub orders causes by how directly you can test them, not by a guess at how common each one is.\", \"The gum line is the clearest example. The usual advice is that it means too much sauce, but bottom heat, hydration, and bake balance can all produce one, and each has its own test. Starting with the sauce because that is the usual advice can waste several bakes.\"]}, {\"heading\": \"When it is not a fault\", \"paragraphs\": [\"Some things people try to fix are not defects. A domestic oven will not produce the char pattern of a very hot wood-fired bake, and chasing it will only make you burn the rim.\", \"Where a result is a limit of the equipment rather than a mistake, we say so plainly and point you at a style the equipment can actually deliver.\"], \"bullets\": [{\"text\": \"What your home oven can and cannot do\", \"href\": \"/blog/what-your-home-oven-can-and-cannot-do\"}, {\"text\": \"Which style should you learn first?\", \"href\": \"/blog/which-pizza-style-to-learn-first\"}]}], \"related\": [{\"label\": \"Dough and fermentation\", \"href\": \"/dough\"}, {\"label\": \"Technique\", \"href\": \"/technique\"}, {\"label\": \"Ovens and equipment\", \"href\": \"/equipment\"}, {\"label\": \"Toppings\", \"href\": \"/toppings\"}, {\"label\": \"Glossary\", \"href\": \"/glossary\"}, {\"label\": \"How to log a bake\", \"href\": \"/blog/how-to-log-a-bake\"}], \"faqs\": [{\"q\": \"My pizza has two problems at once. Where do I start?\", \"a\": \"With the one earliest in the process. Fixing a dough problem often resolves a bake problem that looked separate, whereas fixing the bake will not repair under-fermented dough.\"}, {\"q\": \"Is a gum line always too much sauce?\", \"a\": \"No. Insufficient bottom heat, a hydration level the bake cannot drive off, and a bake that was too short at too high a top temperature can all produce one, and there is a test for each.\"}, {\"q\": \"How do I know my oven's real temperature?\", \"a\": \"Measure the surface rather than trusting the dial, and be aware that infrared readings are commonly wrong because of emissivity, angle, and distance. The deck-versus-dome and infrared thermometer guides cover how to take a reading you can rely on.\"}, {\"q\": \"Should I buy a steel to fix a pale base?\", \"a\": \"Try the free fixes first: longer preheat, rack position, and allowing recovery between bakes. They cost nothing, so rule them out before spending anything.\"}, {\"q\": \"My dough is fine until it hits the peel. What is that?\", \"a\": \"Check dwell time first. Dough sitting dressed on a peel starts sticking within a short window, and no amount of extra dusting flour compensates once it has.\"}, {\"q\": \"Why is my crust not leopard-spotted?\", \"a\": \"Because that pattern comes from a specific, very hot bake profile. It is a signature of one style's conditions, not a general quality marker, and a domestic oven will not produce it.\"}, {\"q\": \"Nothing here matches what I am seeing.\", \"a\": \"Record the bake in full — formula, dough temperature, every fermentation stage with a time and a temperature, the surface and its preheat — and change one variable on the next bake. A complete record narrows the cause in a way a description from memory cannot.\"}], \"closingCtaHeading\": \"Record it before you change it\", \"closingCtaText\": \"Diagnosis needs a comparison. Record the same fields on both bakes — formula, dough temperature, every fermentation stage with a time and a temperature, the bake surface and its preheat — so the two are actually comparable rather than starting over each time.\", \"closingCtas\": [{\"label\": \"How to log a bake\", \"href\": \"/blog/how-to-log-a-bake\"}, {\"label\": \"Dough fundamentals\", \"href\": \"/dough\"}]};\n  const btn = (kind) => ({\n    display: \"inline-block\",\n    padding: kind === \"primary\" ? \"11px 18px\" : \"9px 16px\",\n    margin: \"6px 10px 6px 0\",\n    borderRadius: 0,\n    textDecoration: \"none\",\n    fontWeight: 700,\n    fontSize: 15,\n    background: kind === \"primary\" ? \"var(--c1fflz6z-runtime-action-bg)\" : \"transparent\",\n    color: kind === \"primary\" ? \"var(--c1fflz6z-runtime-action-fg)\" : \"var(--c1fflz6z-runtime-accent)\",\n    border: \"1px solid var(--c1fflz6z-runtime-action-bg)\",\n  });\n  return (\n    _react2.default.createElement('div', { className: \"bcpage reading-boccalone-troubleshooting reading-article\"  , 'aria-labelledby': \"bc-title\", 'data-reading-page': \"troubleshooting\",}, _react2.default.createElement('style', null, `\n.reading-boccalone-troubleshooting{box-sizing:border-box;width:100%;max-width:960px;margin:0 auto;padding:64px clamp(20px,5vw,64px) 80px;color:var(--c1fflz6z-runtime-text);background:var(--c1fflz6z-runtime-bg);font-family:var(--c1fflz6z-font-body);font-size:17px;line-height:1.75;overflow-wrap:anywhere}\n.reading-boccalone-troubleshooting *{box-sizing:border-box} .reading-boccalone-troubleshooting :is(h1,h2,h3){font-family:var(--c1fflz6z-font-heading);font-weight:400;color:var(--c1fflz6z-runtime-text);text-wrap:balance}\n.reading-boccalone-troubleshooting h1{font-size:clamp(42px,5.5vw,72px);line-height:1.08;letter-spacing:-.015em;margin:0 0 26px;max-width:24ch}\n.reading-boccalone-troubleshooting h2{font-size:clamp(28px,3.5vw,38px);line-height:1.18;margin:48px 0 18px} .reading-boccalone-troubleshooting h3{font-size:25px;line-height:1.25;margin:28px 0 12px}\n.reading-boccalone-troubleshooting :is(p,ul,ol){margin-top:0;margin-bottom:20px} .reading-boccalone-troubleshooting li{margin-bottom:8px} .reading-boccalone-troubleshooting :is(ul,ol){padding-left:24px} .reading-boccalone-troubleshooting p{max-width:74ch}\n.reading-boccalone-troubleshooting .reading-kicker{font-family:var(--c1fflz6z-font-body);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--c1fflz6z-runtime-accent);margin:0 0 16px}\n.reading-boccalone-troubleshooting :is(.bc-intro,h1+p){font-size:20px;line-height:1.65;margin-bottom:30px} .reading-boccalone-troubleshooting a{color:var(--c1fflz6z-runtime-accent);text-underline-offset:4px} .reading-boccalone-troubleshooting a:hover{text-decoration-thickness:2px}\n.reading-boccalone-troubleshooting :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--c1fflz6z-runtime-accent);outline-offset:4px}\n.reading-boccalone-troubleshooting :is(.bc-callout,.bc-warn,.gf-note){background:var(--c1fflz6z-runtime-panel);border-left:3px solid var(--c1fflz6z-runtime-action-bg);padding:18px 22px;margin:24px 0;font-size:16px}\n.reading-boccalone-troubleshooting :is(.gf-card,.gf-rule,.gf-step){border-top:1px solid var(--c1fflz6z-runtime-border);padding:22px 0;margin:0} .reading-boccalone-troubleshooting :is(.gf-card,.gf-rule) h3{margin-top:0} .reading-boccalone-troubleshooting .gf-rule strong{display:block;margin-bottom:8px}\n.reading-boccalone-troubleshooting .gf-cta{display:inline-flex;align-items:center;min-height:48px;padding:12px 20px;margin:0 12px 12px 0;border:1px solid var(--c1fflz6z-runtime-action-bg);border-radius:4px;background:var(--c1fflz6z-runtime-action-bg);color:var(--c1fflz6z-runtime-action-fg);text-decoration:none;font-weight:600}\n.reading-boccalone-troubleshooting .gf-cta.secondary{background:transparent;color:var(--c1fflz6z-runtime-accent)} .reading-boccalone-troubleshooting .bc-ctarow{margin:24px 0;display:flex;flex-wrap:wrap;gap:10px} .reading-boccalone-troubleshooting .bc-ctarow a{margin:0;min-height:48px;display:inline-flex;align-items:center}\n.reading-boccalone-troubleshooting :is(.reading-table,.gf-scroll){max-width:100%;overflow-x:auto;margin:24px 0;overscroll-behavior-x:contain} .reading-boccalone-troubleshooting table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6;margin:0} .reading-boccalone-troubleshooting :is(th,td){padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--c1fflz6z-runtime-border);color:var(--c1fflz6z-runtime-text)} .reading-boccalone-troubleshooting th{background:var(--c1fflz6z-runtime-panel);font-weight:700} .reading-boccalone-troubleshooting .bc-table{display:table}\n.reading-boccalone-troubleshooting details{padding:18px 0;border-bottom:1px solid var(--c1fflz6z-runtime-border)} .reading-boccalone-troubleshooting summary{cursor:pointer;font-weight:600;min-height:44px;padding:8px 0} .reading-boccalone-troubleshooting details p{margin:12px 0 0}\n.reading-boccalone-troubleshooting :is(input,select,textarea,button){font:inherit;color:var(--c1fflz6z-runtime-text);max-width:100%;min-height:44px} .reading-boccalone-troubleshooting :is(input,select,textarea){background:var(--c1fflz6z-runtime-bg);border:1px solid var(--c1fflz6z-runtime-border);padding:10px 12px} .reading-boccalone-troubleshooting :is(img,svg){max-width:100%;height:auto}\n.reading-boccalone-troubleshooting .reading-footer{border-top:1px solid var(--c1fflz6z-runtime-border);margin-top:56px;padding-top:24px;font-size:14px} .reading-boccalone-troubleshooting .reading-footer a{display:inline-flex;min-height:44px;align-items:center}\n@media(max-width:600px){.reading-boccalone-troubleshooting{padding:36px 20px 56px;font-size:16px} .reading-boccalone-troubleshooting h1{font-size:44px} .reading-boccalone-troubleshooting h2{font-size:29px;margin-top:36px} .reading-boccalone-troubleshooting h3{font-size:24px} .reading-boccalone-troubleshooting :is(.bc-intro,h1+p){font-size:18px} .reading-boccalone-troubleshooting :is(th,td){padding:10px;font-size:14px}}\n`), _react2.default.createElement('p', { className: \"reading-kicker\",}, \"Reading\")\n\n\n      , _react2.default.createElement('h1', { id: \"bc-title\",}, d.h1)\n      , _react2.default.createElement('p', { className: \"bc-intro\",}, d.intro)\n      , d.primaryCtas && d.primaryCtas.length ? (\n        _react2.default.createElement('div', { className: \"bc-ctarow\",}\n          , d.primaryCtas.map((c, i) => (\n            _react2.default.createElement('a', { key: i, href: c.href, style: btn(i === 0 ? \"primary\" : \"ghost\"),}, c.label)\n          ))\n        )\n      ) : null\n\n      , d.notice ? _react2.default.createElement('p', { className: \"bc-warn\",}, d.notice) : null\n\n      , d.inShort ? (\n        _react2.default.createElement('section', { 'aria-label': \"In short\" ,}\n          , _react2.default.createElement('h2', null, \"In short\" )\n          , _react2.default.createElement('p', null, d.inShort)\n        )\n      ) : null\n\n      , d.whoFor && d.whoFor.length ? (\n        _react2.default.createElement('section', { 'aria-label': \"Who this is for\"   ,}\n          , _react2.default.createElement('h2', null, \"Who this is for\"   )\n          , _react2.default.createElement('ul', null, d.whoFor.map((x, i) => _react2.default.createElement('li', { key: i,}, x)))\n        )\n      ) : null\n\n      , d.whenToUse && d.whenToUse.length ? (\n        _react2.default.createElement('section', { 'aria-label': \"When to use this\"   ,}\n          , _react2.default.createElement('h2', null, \"When to use this\"   )\n          , _react2.default.createElement('ul', null, d.whenToUse.map((x, i) => _react2.default.createElement('li', { key: i,}, x)))\n        )\n      ) : null\n\n      , d.sections.map((s, i) => (\n        _react2.default.createElement('section', { key: i, 'aria-label': s.heading,}\n          , _react2.default.createElement('h2', null, s.heading)\n          , (s.paragraphs || []).map((pp, j) => _react2.default.createElement('p', { key: j,}, pp))\n          , s.table ? (\n            _react2.default.createElement('div', { className: \"reading-table\", tabIndex: 0, role: \"region\", 'aria-label': \"Scrollable reference table\"  ,}, _react2.default.createElement('table', { className: \"bc-table\",}\n              , _react2.default.createElement('thead', null, _react2.default.createElement('tr', null, s.table.head.map((h, j) => _react2.default.createElement('th', { key: j,}, h))))\n              , _react2.default.createElement('tbody', null\n                , s.table.rows.map((r, j) => (\n                  _react2.default.createElement('tr', { key: j,}, r.map((c, k) => _react2.default.createElement('td', { key: k,}, c)))\n                ))\n              )\n            ))\n          ) : null\n          , (s.bullets || []).length ? (\n            _react2.default.createElement('ul', null\n              , s.bullets.map((b, j) => (\n                _react2.default.createElement('li', { key: j,}, b.href ? _react2.default.createElement('a', { href: b.href,}, b.text) : b.text)\n              ))\n            )\n          ) : null\n          , s.note ? _react2.default.createElement('p', { className: \"bc-callout\",}, s.note) : null\n          , s.warn ? _react2.default.createElement('p', { className: \"bc-warn\",}, s.warn) : null\n        )\n      ))\n\n      , d.related && d.related.length ? (\n        _react2.default.createElement('section', { 'aria-label': \"Related pages\" ,}\n          , _react2.default.createElement('h2', null, \"Where to go next\"   )\n          , _react2.default.createElement('ul', null, d.related.map((r, i) => _react2.default.createElement('li', { key: i,}, _react2.default.createElement('a', { href: r.href,}, r.label))))\n        )\n      ) : null\n\n      , d.faqs && d.faqs.length ? (\n        _react2.default.createElement('section', { 'aria-label': \"Frequently asked questions\"  ,}\n          , _react2.default.createElement('h2', null, \"Frequently asked questions\"  )\n          , d.faqs.map((f, i) => (\n            _react2.default.createElement('details', { key: i,}\n              , _react2.default.createElement('summary', null, f.q)\n              , _react2.default.createElement('p', null, f.a)\n            )\n          ))\n        )\n      ) : null\n\n      , d.closingCtaHeading ? (\n        _react2.default.createElement('section', { 'aria-label': \"Next step\" ,}\n          , _react2.default.createElement('h2', null, d.closingCtaHeading)\n          , _react2.default.createElement('p', null, d.closingCtaText)\n          , _react2.default.createElement('div', { className: \"bc-ctarow\",}\n            , (d.closingCtas || []).map((c, i) => (\n              _react2.default.createElement('a', { key: i, href: c.href, style: btn(i === 0 ? \"primary\" : \"ghost\"),}, c.label)\n            ))\n          )\n        )\n      ) : null\n    , _react2.default.createElement('aside', { className: \"reading-footer\",}, _react2.default.createElement('a', { href: \"/\",}, \"Back to Boccalone\"  )))\n  );\n} exports.default = TroubleshootingPage;"}