@layer components{.fw{text-align:center;inline-size:100%}.fw p{max-inline-size:none}.fw-heading{font-size:var(--text-2);margin-block-end:.75rem;line-height:1.2}.fw-intro{max-inline-size:46ch;color:var(--color-text-secondary);margin-inline:auto}.fw-hint{color:var(--color-text-secondary);margin-block-start:.75rem;font-size:.92rem}.fw-wheel{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;block-size:auto;inline-size:100%;max-inline-size:min(46rem,86svh);margin:1rem auto 0;display:block}.fw-wheel.is-dragging{cursor:grabbing}.fw-wheel[role=img]{cursor:default}.fw-seg,.fw-mseg{cursor:pointer}:is(.fw-seg,.fw-mseg) path{stroke:var(--color-surface);stroke-width:1.5px;transition:filter .15s}:is(.fw-seg,.fw-mseg):focus,:is(.fw-seg,.fw-mseg):focus-visible{box-shadow:none;outline:none}@media (hover:hover){:is(.fw-seg,.fw-mseg):hover path{filter:brightness(.93)}}.fw-mseg path{stroke-width:2px}.fw svg text{fill:var(--color-primary);pointer-events:none;dominant-baseline:middle}.fw-t0,.fw-m1{font-family:var(--font-display)}.fw-t0{text-anchor:middle}.fw-t1,.fw-t2,.fw-m2{font-family:var(--font-body);font-weight:600}.fw-hub circle{fill:var(--color-surface);stroke:var(--color-border);stroke-width:2px}.fw-hub text{font-family:var(--font-body);text-anchor:middle;font-size:19px;font-weight:600}.fw-focus{pointer-events:none;fill:none;display:none}.fw-focus.is-on{display:inline}.fw-focus .edge{stroke:var(--color-primary);stroke-width:8px}.fw-focus .ring{stroke:var(--color-accent);stroke-width:4px}.fw-dialog{border-radius:var(--radius);background:var(--color-surface);max-block-size:min(92dvh,52rem);inline-size:min(100% - 1.5rem,35rem);max-inline-size:none;color:var(--color-text);text-align:start;border:0;padding:0;overflow:hidden;box-shadow:0 20px 60px #01152259}.fw-dialog::backdrop{background:color-mix(in oklab, var(--color-primary) 55%, transparent)}html:has(.fw-dialog[open]){overflow:hidden}.fw-modal{max-block-size:inherit;flex-direction:column;display:flex}.fw-mhead{border-block-end:1px solid var(--color-border);flex:none;padding:1.1rem 4rem .9rem 1.35rem;position:relative}.fw-swatch{border-radius:3px;block-size:5px;inline-size:44px;margin-block-end:.7rem}.fw-crumb{color:var(--color-text-secondary);margin-block-end:.35rem;font-size:.88rem;line-height:1.4}.fw-crumb .sep{margin-inline:.35em}.fw-title{font-size:var(--text-3);margin-block-end:.4rem;line-height:1.1}.fw-title:focus{box-shadow:none;outline:none}.fw-def{font-size:1rem}.fw-x{inline-size:var(--tap);block-size:var(--tap);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;inset-block-start:.6rem;inset-inline-end:.6rem}.fw-x svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;block-size:18px;inline-size:18px}@media (hover:hover){.fw-x:hover{border-color:var(--color-primary)}}.fw-mbody{overscroll-behavior:contain;flex:auto;min-block-size:0;padding:1rem 1rem .75rem;overflow-y:auto}.fw-ask{text-align:center;color:var(--color-text-secondary);margin-block-end:.25rem;font-size:.92rem}.fw-mini{-webkit-tap-highlight-color:transparent;block-size:auto;inline-size:100%;max-inline-size:28rem;margin-inline:auto;display:block}.fw-mhub circle{fill:var(--color-surface);stroke:var(--color-border);stroke-width:2px}.fw-mhub text{font-family:var(--font-body);text-anchor:middle;font-weight:700}.fw-prompt{border-radius:var(--radius);background:color-mix(in oklab, var(--color-surface-alt) 55%, var(--color-surface));margin-block:.25rem 1rem;padding:1rem 1.15rem;font-size:1.05rem;font-style:italic}.fw-mfoot{border-block-start:1px solid var(--color-border);flex-wrap:wrap;flex:none;align-items:center;gap:.6rem;padding:.9rem 1.25rem 1.1rem;display:flex}.fw-mfoot .push{margin-inline-start:auto}.fw-text-btn{min-block-size:var(--tap);color:var(--color-link);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;align-items:center;padding:0 .25rem;font-weight:700;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}}@layer motion{@media (prefers-reduced-motion:no-preference){.fw-dialog[open]{animation:.2s fw-rise}.fw-dialog[open]::backdrop{animation:.2s fw-fade}}@keyframes fw-rise{0%{opacity:0;translate:0 10px}}@keyframes fw-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.fw-seg path,.fw-mseg path{transition:none}}}
