/* Fair Share Fractions */
.fs-panel { display: flex; justify-content: center; }
.fs-shape { width: min(260px, 68vw); height: auto; }
.fs-part { cursor: pointer; }
.fs-part:focus-visible { outline: none; stroke: var(--focus); stroke-width: 6; }
.fs-frac { display: flex; flex-direction: column; align-items: center; }
.fs-frac b { font-size: 28px; }
.fs-frac small { font-size: 14px; color: var(--ink-2); }
.fs-things { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; background: #fff; border-radius: 18px; padding: 10px; box-shadow: var(--shadow); }
.fs-thing { min-height: 56px; min-width: 48px; border-radius: 14px; border: 3px solid var(--line); background: #fff; font-size: 30px; cursor: pointer; touch-action: manipulation; }
.fs-thing[aria-pressed="true"] { background: #f7ecd6; border-color: var(--wood); transform: translateY(3px); box-shadow: inset 0 0 0 3px var(--straw); }
.fs-basket { text-align: center; font-size: 22px; font-weight: 900; background: #f7ecd6; border: 4px dashed var(--wood); border-radius: 18px; padding: 10px; }
