/* Full-width conceptual method figure, scoped to SWEET's publication entry. */
.home-publication-row:has(sweet-figure){flex-direction:column!important;align-items:stretch!important;gap:20px!important}
sweet-figure{display:block;width:100%;min-width:0;color:#514c43}
.sweet-figure{margin:0}
.sweet-canvas{position:relative;border:1px solid #ded7ca;border-radius:5px;background:#f6f3ec;padding:10px 15px 16px}
.sweet-play{position:absolute;top:10px;right:15px;z-index:1;display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border:0;border-radius:3px;padding:5px;background:none;color:#746f65;cursor:pointer}
.sweet-play:hover{background:#ebe5d9;color:#b06a4f}
.sweet-play svg{display:block;width:14px;height:14px;fill:currentColor}
.sweet-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.sweet-play[hidden]{display:none}
.sweet-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.sweet-panel{position:relative;min-width:0}
.sweet-panel:not(:last-child)::after{content:'→';position:absolute;right:-23px;top:87px;font:20px/1 'Newsreader',serif;color:#b5ad9f}
.sweet-step{display:flex;gap:8px;align-items:baseline;width:100%;box-sizing:border-box;padding:5px 32px 5px 0;border:0;background:none;text-align:left;color:#746f65;font:500 11.5px/1.5 'IBM Plex Mono',monospace;cursor:pointer}
.sweet-number{color:#a59b8b;font-size:10px}
.sweet-step:hover,.sweet-step[aria-pressed="true"],.sweet-step[aria-pressed="true"] .sweet-number{color:#b06a4f}
.sweet-panel>svg{display:block;width:100%;height:auto;overflow:visible}
.sweet-canvas text{fill:#514c43;font-family:'IBM Plex Mono',monospace}
.sweet-canvas .sweet-label{font-size:12px;fill:#746f65}
.sweet-canvas .sweet-equation{font-family:'Newsreader',serif;font-size:23px}
.sweet-canvas .sweet-small{font-size:11.5px}
.sweet-canvas .sweet-math{font-family:'Newsreader',serif;font-size:23px;font-style:italic}
.sweet-canvas .sweet-clay{fill:#b06a4f}
.sweet-paper{fill:#faf8f3;stroke:#d6cfc1;transition:stroke .4s}
sweet-figure[data-step="0"] .sweet-perturbed{stroke:#b06a4f}
.sweet-guide{fill:none;stroke:#bab3a6;stroke-width:1}
.sweet-activations{fill:#6d7968}
.sweet-contrast{fill:#b06a4f}
.sweet-direction{fill:none;stroke:#b06a4f;stroke-width:1.5}
.sweet-removed{fill:none;stroke:#b06a4f;stroke-width:1.5;stroke-dasharray:3 4;transition:opacity 1.5s}
.sweet-original{fill:none;stroke:#b7b0a3;stroke-width:1.5;stroke-dasharray:3 4}
.sweet-weight{stroke:#3e493b;stroke-width:2.2}
.sweet-weight-head{fill:#3e493b}
.sweet-edited-label,.sweet-projection{opacity:0;transition:opacity 1s}
sweet-figure[data-step="2"] .sweet-edited-label,sweet-figure[data-step="2"] .sweet-projection{opacity:1}
sweet-figure[data-step="2"] .sweet-removed{opacity:.12}
.sweet-play:focus-visible,.sweet-step:focus-visible{outline:2px solid #b06a4f;outline-offset:3px}
.home-page .sweet-panel-caption{font:13px/1.55 'Newsreader','Noto Serif SC',serif;color:#625c52;margin:10px 0 0}
@media(max-width:600px){
 .sweet-canvas{padding:10px 16px 18px}
 .sweet-controls{gap:5px;padding-right:32px;margin-bottom:10px}
 .sweet-canvas:has(.sweet-play[hidden]) .sweet-controls{padding-right:0}
 .sweet-play{top:13px;right:16px}
 .sweet-panels{grid-template-columns:1fr;gap:0}
 .sweet-panel{grid-area:1 / 1}
 .sweet-panel[aria-hidden="true"]{visibility:hidden;pointer-events:none}
 .sweet-panel>svg{max-width:248px;margin:0 auto}
 .sweet-panel:not(:last-child)::after{content:none}
 .home-page .sweet-panel-caption{font-size:15px;margin-top:8px}
 .sweet-step{font-size:11px;justify-content:center;padding:7px 2px;border-radius:3px}
 .sweet-number{display:none}
 .sweet-step[aria-selected="true"]{background:#eae3d6;color:#b06a4f}
}
@media(prefers-reduced-motion:reduce){.sweet-canvas *{transition:none!important}}
@media(prefers-reduced-motion:no-preference){
 sweet-figure[data-step="1"] .sweet-extracted{stroke-dasharray:160;animation:sweet-draw-direction 1.4s ease both}
 sweet-figure[data-step="1"] .sweet-contrast{animation:sweet-feature-emphasis 1.4s ease both}
 @keyframes sweet-draw-direction{from{stroke-dashoffset:160}to{stroke-dashoffset:0}}
 @keyframes sweet-feature-emphasis{from{opacity:.35}to{opacity:1}}
}

.sweet-canvas .sweet-problem{font:14px 'Newsreader','Noto Serif SC',serif}
.sweet-canvas .sweet-outcome{font:500 11.5px 'IBM Plex Mono',monospace}
.sweet-canvas .sweet-correct{fill:#536650}
.sweet-correct-fill{fill:#e8ede3}
.sweet-incorrect-fill{fill:#f0e3da}

.sweet-canvas .sweet-track-label{font-size:11.5px;font-weight:500}
.sweet-canvas .sweet-track-key{font-size:10.5px;fill:#746f65}
.sweet-canvas .sweet-track-behavior{font-size:11.5px;fill:#b06a4f}
.sweet-canvas .sweet-vector-symbol{font-family:'Newsreader',serif;font-size:17px;font-style:italic}

.sweet-components{fill:#ebe7dd;stroke:#c8c0b2;stroke-width:1}
.sweet-components .sweet-selected{fill:#b06a4f;stroke:#b06a4f}
@media(prefers-reduced-motion:no-preference){sweet-figure[data-step="2"] .sweet-selected{animation:sweet-feature-emphasis .8s ease both}}
