.ffd-guide,.ffd-mini{font-variant-numeric:tabular-nums}
.ffd-fr{display:inline-flex;flex-direction:column;align-items:stretch;justify-content:center;vertical-align:middle;line-height:1.15}
.ffd-fr>i{font-style:normal;font-size:.85em;text-align:center;padding:0 3px}
.ffd-fr>i+i{border-top:2px solid currentColor}
.sg-card .mini .ffd-mini{display:inline-flex;gap:6px;align-items:center;font-size:16px;font-weight:700;color:#1F2933}
.ffd-mini>i{font-style:normal}
.ffd-mini .eq{color:#67757F}
.ffd-mini .g{color:#4A7A1E}
.ffd-hero{color:#1F2933}
.ffd-tiles{display:flex;justify-content:center;align-items:flex-start;gap:8px;flex-wrap:nowrap}
.ffd-form{text-align:center}
.ffd-tile{min-width:84px;height:72px;border:2px solid #E5E0D6;border-radius:10px;background:#FFFFFF;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700;box-sizing:border-box}
.ffd-tile[data-hero]{opacity:.35}
.ffd-tile.ffd-arrived{opacity:1;border-color:#2F6FEB}
.ffd-eq{font-size:22px;color:#67757F;line-height:72px}
.ffd-label{font-size:13px;color:#67757F;margin-top:6px}
.ffd-hero svg{display:block;width:100%;max-width:300px;margin:12px auto 0}
.ffd-tenth{opacity:0}
.ffd-tenth.ffd-arrived{opacity:1}
.ffd-caption{text-align:center;font-size:14px;color:#67757F;margin-top:8px}
.ffd-step svg{display:block;width:100%;max-width:480px;height:auto;margin:0 auto}
.ffd-step [hidden],.ffd-ld [hidden]{display:none}
.ffd-source,.ffd-piece,.ffd-shade{fill:#93B8F2}
.ffd-bar,.ffd-piece,.ffd-outline,.ffd-cut,.ffd-block-line{stroke:#2F6FEB}
.ffd-bar,.ffd-outline,.ffd-cut,.ffd-block-line{stroke-width:2}
.ffd-outline{fill:none}
.ffd-source.ffd-empty{fill:#FFFFFF;stroke:#93B8F2;stroke-width:1.5;stroke-dasharray:4 3}
.ffd-piece{stroke-width:1.5}
.ffd-plate{fill:#FFFFFF;stroke:#67757F;stroke-width:1.5}
.ffd-ring{fill:none;stroke:#4A7A1E;stroke-width:2.5}
.ffd-cell-line{stroke:#E5E0D6;stroke-width:1}
.ffd-border{fill:none;stroke:#1F2933;stroke-width:1.5}
.ffd-border.ffd-finished{stroke:#4A7A1E;stroke-width:2.5}
.ffd-legend{font-size:14px;color:#67757F;text-align:center}
.ffd-work{max-width:320px;margin:12px auto 0;font-size:16px;line-height:1.9;color:#1F2933;text-align:left}
.ffd-work-line{font-weight:400}
.ffd-work-line.ffd-newest{font-weight:700}
.ffd-work-line.ffd-answer{color:#4A7A1E}
.ffd-controls{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:14px}
.ffd-dots{display:flex;gap:5px;align-items:center}
.ffd-dots i{width:8px;height:8px;background:#E5E0D6;border-radius:50%;flex:none}
.ffd-dots i.on{background:#2F6FEB}
.ffd-guide .sg-btn{min-height:44px;min-width:44px;box-sizing:border-box;text-align:center}
.ffd-guide .sg-btn:disabled{opacity:.5;cursor:default;transform:none}
.ffd-guide .sg-btn:focus-visible,.ffd-guide .sg-opts button:focus-visible{outline:3px solid #2F6FEB;outline-offset:2px}
.ffd-guide .sg-opts button{min-height:44px;min-width:44px;box-sizing:border-box}
.ffd-guide .w.hl{background:var(--sg-blue-bg);border-radius:4px;padding:0 3px}
.ffd-tabs{display:flex;justify-content:center;gap:8px;margin-bottom:12px}
.ffd-grid{display:grid;grid-template-columns:34px 26px 12px repeat(3,26px);grid-auto-rows:30px;width:max-content;margin:0 auto;font-size:20px;font-weight:700;color:#1F2933}
.ffd-ld-cell{display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.ffd-bracket-top{border-top:2px solid #1F2933}
.ffd-bracket-left{border-left:2px solid #1F2933}
.ffd-underlined{border-bottom:2px solid #1F2933}
.ffd-marked{border-bottom:3px solid #2F6FEB;color:#2F6FEB}
.ffd-banded{background:rgb(147 184 242 / 35%);border-radius:4px}
@media(max-width:480px){
.ffd-tile{min-width:72px;height:64px;font-size:22px}
.ffd-eq{line-height:64px}
.ffd-hero svg{max-width:276px}
.ffd-work{font-size:15px}
.ffd-grid{grid-template-columns:30px 26px 12px repeat(3,24px);font-size:19px}
}
@media(prefers-reduced-motion:reduce){
.ffd-guide,.ffd-guide *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.ffd-guide.sg-step{opacity:1;transform:none}
.ffd-guide .steps li{transform:none}
.ffd-tile[data-hero]{opacity:1;border-color:#2F6FEB}
.ffd-tenth{opacity:1}
}
