.set-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.presets.ops button{font-family:var(--font-math);font-size:1.0625rem}:is([data-stage=sets],[data-stage=intervals],[data-stage=product],[data-stage=relation]) .inspector-row .line{white-space:normal;overflow-wrap:anywhere}:is([data-stage=sets],[data-stage=intervals],[data-stage=product],[data-stage=relation]) .inspector-row dd{min-width:0;max-width:100%}.chip-rows{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.chip-set{border:1px solid var(--rule);border-left:4px solid var(--role);border-radius:2px;padding:6px 10px 10px;margin:0;min-width:0;background:var(--paper)}.chip-set legend{padding:0 6px;font:500 .875rem var(--font-ui);color:var(--ink-2)}.chip-name{font:700 1.0625rem var(--font-math);color:var(--role-text)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{min-width:44px;min-height:44px;padding:0 6px;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--sheet);color:var(--ink);font:500 1rem var(--font-mono);font-variant-numeric:tabular-nums}.chip[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink);font-weight:700}.venn-wrap{border:1px solid var(--rule);border-radius:2px;background:var(--sheet);padding:6px 6px 8px}.venn{display:block;width:100%;height:auto;max-height:340px;user-select:none;-webkit-user-select:none}.venn-universe{fill:none;stroke:var(--rule-strong);stroke-width:2}.venn-fill{fill:color-mix(in srgb,var(--c-primary) 24%,transparent)}.venn-circle{fill:none;stroke:var(--role);stroke-width:3.2}.venn-name{font:700 22px var(--font-math);fill:var(--role-text, var(--ink))}.venn-token circle{fill:var(--sheet);stroke:var(--ink-3);stroke-width:1.4}.venn-token text{font:500 14px var(--font-mono);fill:var(--ink)}.venn-token.is-selected circle{fill:color-mix(in srgb,var(--c-primary) 32%,var(--sheet));stroke:var(--c-primary-text);stroke-width:3.2}.venn-token.is-selected text{font-weight:800}.venn-caption{margin-top:4px;font:.8125rem/1.4 var(--font-ui);color:var(--ink-3)}.fact-list-wrap{display:grid;gap:14px;padding-top:14px;border-top:1px solid var(--rule)}.fact-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px 20px}.fact-list li{font:.9375rem/1.45 var(--font-ui)}.fact-list .mark,.prop-name .mark{display:inline-block;min-width:1.4em;font-weight:700}.fact-list li[data-holds=true] .mark,.property-list li[data-holds=true] .mark{color:var(--c-y-text)}.fact-list li[data-holds=false] .mark,.property-list li[data-holds=false] .mark{color:var(--c-caution-text)}.fact-list-wrap .formula-panel{border-top:0;padding-top:0;grid-template-columns:minmax(0,1fr)}.number-line-wrap{border:1px solid var(--rule);border-radius:2px;background:var(--sheet);overflow:hidden}.number-line{display:block;width:100%;height:262px;user-select:none;-webkit-user-select:none}.nl-grid line{stroke:var(--grid-minor);stroke-width:1;shape-rendering:crispEdges}.nl-axis{stroke:var(--axis);stroke-width:1.4}.nl-tick{font:12px var(--font-math);fill:var(--ink-3)}.nl-baseline{stroke:var(--rule);stroke-width:1;stroke-dasharray:2 5}.nl-bar{stroke:var(--role);stroke-width:7;stroke-linecap:butt}.nl-arrow{fill:var(--role)}.nl-end{stroke:var(--role);stroke-width:3}.nl-end.is-closed{fill:var(--role)}.nl-end.is-open{fill:var(--sheet)}.nl-name{font:700 16px var(--font-math);fill:var(--role-text)}.nl-empty{font:italic 14px var(--font-ui);fill:var(--ink-2)}.nl-x-line{stroke:var(--ink);stroke-width:1.4;stroke-dasharray:3 5}.nl-x-marker{fill:var(--ink);stroke:var(--sheet);stroke-width:1.5}.nl-x-label{font:italic 600 15px var(--font-math);fill:var(--ink)}.slider-row{display:grid;gap:2px;padding-top:10px}.slider-row label{font:500 .875rem var(--font-ui);color:var(--ink-2)}.slider-row .x-name{font:italic 700 1rem var(--font-math);color:var(--ink)}.slider-row input[type=range]{width:100%;height:44px;margin:0;accent-color:var(--ink);cursor:pointer}.membership-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.membership-list li{padding:6px 10px;border-left:4px solid var(--ink-3);background:var(--paper);font:.9375rem/1.5 var(--font-ui)}.membership-list li[data-member=true]{border-left-color:var(--c-y)}.membership-list li[data-member=false]{border-left-style:dashed}.end-editors{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding-top:14px;border-top:1px solid var(--rule)}@container (min-width: 700px){.end-editors{grid-template-columns:repeat(2,minmax(0,1fr))}}.interval-fieldset{border:1px solid var(--rule);border-left:4px solid var(--role);border-radius:2px;padding:6px 12px 14px;margin:0;min-width:0;display:grid;gap:16px;background:var(--paper)}.interval-fieldset legend{padding:0 6px;font:600 .9375rem var(--font-ui);color:var(--role-text)}.end-editor{display:grid;gap:10px;min-width:0}.end-editor .segmented{grid-column:auto}.end-infinite{margin:0;min-height:44px;display:flex;align-items:center;font:.875rem/1.4 var(--font-ui);color:var(--ink-2)}.pair-tables{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}@container (min-width: 640px){.pair-tables{grid-template-columns:repeat(2,minmax(0,1fr))}}.pair-table{border-collapse:separate;border-spacing:3px;max-width:100%}.pair-table caption{caption-side:top;text-align:left;padding-bottom:6px;font:600 .9375rem var(--font-ui);color:var(--role-text)}.pair-table th{min-width:28px;padding:2px 4px;text-align:center;font:600 .9375rem var(--font-mono);color:var(--ink-2)}.pair-table .corner{padding:0}.pair{min-width:40px;height:36px;padding:0 4px;text-align:center;font:.8125rem var(--font-mono);font-variant-numeric:tabular-nums;border:1px solid var(--rule-strong);border-radius:2px;background:var(--sheet);white-space:nowrap}.pair.is-extra{border:2px dashed var(--c-caution-text);background:color-mix(in srgb,var(--c-caution) 16%,var(--sheet));font-weight:700}.pair.is-witness{border-style:solid}@container (max-width: 520px){.pair-table{border-spacing:2px}.pair-table th{min-width:20px;padding:2px 1px}.pair{min-width:0;padding:0 1px;font-size:.75rem}}.pair-empty{padding:10px 12px;font:italic .9375rem/1.4 var(--font-ui);color:var(--ink-2)}.relation-grid-wrap{display:grid;gap:8px;align-content:start}.relation-grid{border-collapse:separate;border-spacing:2px;max-width:100%}.relation-grid caption{caption-side:bottom;text-align:left;padding-top:8px;font:.8125rem/1.4 var(--font-ui);color:var(--ink-3)}.relation-grid th{min-width:28px;text-align:center;font:600 .9375rem var(--font-mono);color:var(--ink-2)}.relation-grid .corner{font:600 .75rem var(--font-math);color:var(--ink-3);white-space:nowrap;padding:0 2px}.relation-grid .axis-a{color:var(--c-x-text)}.relation-grid .axis-b{color:var(--c-y-text)}.rel-cell{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--rule-strong);border-radius:2px;background:var(--sheet);color:var(--ink);font:1.125rem var(--font-mono)}.rel-cell.is-related{background:color-mix(in srgb,var(--c-primary) 22%,var(--sheet));border-color:var(--c-primary-text)}.rel-cell.is-present{outline:3px solid var(--ink);outline-offset:-4px}.rel-cell.is-missing{outline:3px dashed var(--c-caution-text);outline-offset:-4px}.property-block{display:grid;gap:8px;padding-top:14px;border-top:1px solid var(--rule)}.property-block h4{font:600 1rem/1.3 var(--font-text)}.property-list{list-style:none;margin:0;padding:0;display:grid;gap:0}.property-list li{display:grid;grid-template-columns:minmax(0,13.5em) minmax(0,1fr);gap:4px 14px;align-items:center;padding:6px 0;border-top:1px solid var(--rule)}.property-list li:first-child{border-top:0}@container (max-width: 560px){.property-list li{grid-template-columns:minmax(0,1fr)}}.prop-name{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--sheet);color:var(--ink);font:600 .9375rem var(--font-ui);text-align:left}.prop-name[aria-pressed=true]{background:var(--ink);color:var(--paper)}.prop-name[aria-pressed=true] .mark{color:inherit}.prop-name:disabled{opacity:.55}.prop-name.static{border-color:transparent;background:none;padding-left:0}.prop-text{font:.9375rem/1.5 var(--font-ui);color:var(--ink-2)}.prop-def{font-family:var(--font-math);font-style:italic;color:var(--ink-3)}@container (min-width: 700px){.set-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
