.geometry-page{max-width:1220px;padding-top:52px;padding-bottom:70px}
.geo-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding-bottom:30px}
.geo-eyebrow{font-size:11px;font-weight:700;letter-spacing:.13em;color:var(--accent);margin:0 0 15px}
.geo-intro h1{font-size:clamp(32px,4vw,50px);font-weight:650;letter-spacing:-.045em;line-height:1.1;margin:0 0 14px;max-width:780px}
.geo-lead{font-size:17px;color:var(--muted);margin:0;max-width:600px;line-height:1.5}
.geo-intro-meta{display:grid;gap:14px;flex-shrink:0;font-size:12px;color:var(--muted);text-align:right}
.geo-intro-meta>span{font-family:var(--mono)}
.geo-intro-meta i{font-style:normal;padding:0 9px;color:var(--line)}
.geometry-page a{color:var(--accent);text-underline-offset:4px}
.geometry-page a:hover{text-decoration:underline}
.geo-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0}
.geo-toolbar>p{font-size:12px;color:var(--muted);margin:0;max-width:580px}
.geo-toolbar>div{display:flex;align-items:center;gap:16px;flex-shrink:0}
.geo-toolbar .primary-button{font-size:12px;min-height:40px;padding:10px 16px}
.geo-enhancement{font-size:11px;color:var(--muted);margin:12px 0 24px;min-height:17px}
.geo-workspace{display:grid;grid-template-columns:280px minmax(0,1fr);gap:50px}
.geo-controls{min-width:0}
.geo-picker{border:0;padding:0 0 28px;margin:0 0 28px;border-bottom:1px solid var(--line);min-width:0}
.geo-picker legend{display:flex;align-items:center;gap:10px;font-weight:650;font-size:15px;padding:0;margin-bottom:20px}
.geo-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:25px;height:25px;border:1px solid currentColor;border-radius:50%;font-family:var(--mono);font-size:11px;line-height:1;font-weight:700}
.geo-a{color:var(--ink)}.geo-b{color:var(--accent);background:var(--accent-soft)}
.geometry-page label{display:block;font-size:11px;font-weight:600;color:var(--muted);margin:0 0 7px}
.geometry-page select,.geometry-page input{width:100%;height:44px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;padding:8px 10px;margin:0 0 18px;min-width:0}
.geometry-page input{font-family:var(--mono)}
.geometry-page :disabled{cursor:default}
.geometry-page [hidden]{display:none!important}
.geometry-page :focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.geo-manual{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.geo-manual label span{font-weight:400}
.geo-provenance{font-size:12px;line-height:1.6;color:var(--muted)}
.geo-provenance p{margin:0 0 8px}.geo-provenance details{margin-top:14px}.geo-provenance summary{cursor:pointer;width:fit-content}
.geo-provenance small{font-size:11px}.geo-category{font-size:11px;letter-spacing:.04em}
.geo-comparison{scroll-margin-top:90px;min-width:0}
.geo-chart-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px}
.geo-chart-heading h2{font-size:15px;letter-spacing:-.02em;margin:0}.geo-chart-heading>span{font:10px var(--mono);color:var(--muted)}
.geo-measurements{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:22px 0 0}
.geo-measurements>div{position:relative;padding-left:35px;min-width:0}
.geo-measurements .geo-badge{position:absolute;left:0;top:0}
.geo-measurements strong{display:block;font-size:13px;font-weight:600;line-height:25px}
.geo-measurements p{font-size:11px;color:var(--muted);margin:6px 0 0;line-height:1.8}
.geo-measurements b{font:600 15px var(--mono);color:var(--ink)}.geo-measurements i{font-style:normal;padding:0 8px;color:var(--line)}
.geo-plot{display:block;width:100%;max-height:530px;margin:8px auto 0;overflow:visible}
.geo-grid{stroke:var(--line);fill:none;stroke-width:.7;stroke-dasharray:2 6}
.geo-axis{stroke:var(--muted);stroke-width:1;fill:none}
.geo-tick{fill:var(--muted);font:10px var(--mono)}.geo-axis-label{fill:var(--muted);font:11px var(--font)}
.geo-line-a{stroke:var(--ink);fill:var(--ink)}.geo-line-b{stroke:var(--accent);fill:var(--accent)}
.geo-line-a path,.geo-line-b path{fill:none;stroke-width:1.6}.geo-line-a path{stroke-dasharray:5 5}
.geo-line-a text,.geo-line-b text{stroke:none;font:600 13px var(--mono)}
.geo-line-a .geo-leader,.geo-line-b .geo-leader{stroke-width:1;stroke-dasharray:none}
.geo-origin{stroke:var(--ink);stroke-width:1.5;fill:var(--surface)}
.geo-caption{color:var(--muted);font-size:11px;line-height:1.7;margin:14px 0 20px;max-width:690px}
.geo-table-wrap{overflow-x:auto;overscroll-behavior-x:contain;max-width:100%}
.geo-table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}
.geo-table caption{text-align:left;font-weight:600;font-size:13px;padding:20px 0 14px}
.geo-table th,.geo-table td{padding:11px 14px;border-bottom:1px solid var(--line);text-align:right;font-family:var(--mono);font-weight:400}
.geo-table th:first-child{text-align:left;padding-left:0;font-family:var(--font)}
.geo-table thead th{color:var(--muted);font-size:10px;font-family:var(--font)}
.geo-table th small{color:var(--muted);font-size:10px;margin-left:6px;font-weight:400}
.geo-table .geo-primary-row{background:var(--accent-soft)}.geo-table .geo-primary-row th{padding-left:12px;font-weight:600}.geo-table .geo-primary-row td:last-child{font-weight:700;color:var(--accent)}
.geo-catalog-link{font-size:12px}
.geo-finder{border-top:1px solid var(--line);margin-top:48px;padding-top:30px}
.geo-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:22px}
.geo-section-head h2{font-size:28px;letter-spacing:-.035em;line-height:1.15;margin:0 0 10px}
.geo-section-head p:not(.geo-eyebrow){font-size:13px;color:var(--muted);margin:0}
.geo-search-controls{display:grid;grid-template-columns:150px 190px;gap:20px;border:0;margin:0;padding:0;min-width:0}
.geo-search-controls input,.geo-search-controls select{margin-bottom:0}
.geo-result-count{font:11px var(--mono);color:var(--muted);padding:14px 0;border-top:1px solid var(--line);margin-bottom:0}
.geo-results{list-style:none;padding:0;margin:0}
.geo-results li{display:grid;grid-template-columns:25px minmax(0,1fr) auto 145px;gap:24px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line);transition:background-color .15s}
.geo-results li:hover{background:var(--surface-soft)}
.geo-rank{font:11px var(--mono);color:var(--muted)}
.geo-result-name h3{font-size:14px;font-weight:600;margin:0 0 6px}.geo-result-name h3 a{color:var(--ink)}.geo-result-name h3 span{font-family:var(--mono);font-weight:400;margin-left:10px;color:var(--muted)}
.geo-result-name p{color:var(--muted);font-size:11px;margin:0}.geo-result-deltas{display:flex;gap:22px;font-size:11px;color:var(--muted)}
.geo-result-deltas b{display:block;color:var(--ink);font:500 16px var(--mono);margin-top:6px}.geo-use{font-size:12px;text-align:right;min-height:40px;display:flex;align-items:center;justify-content:flex-end;gap:10px}
.geo-finder [data-geo-show]{margin-top:16px}.geo-empty,.geo-notice{font-size:13px;line-height:1.7;padding:28px 20px;background:var(--surface-soft);border-left:2px solid var(--accent)}
.geo-library{margin-top:44px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);scroll-margin-top:90px}
.geo-library summary{cursor:pointer;padding:22px 0;line-height:1.6;font-size:14px;font-weight:600}
.geo-library>details>summary>span:last-child{float:right;font:12px var(--mono);color:var(--muted);margin-top:4px}
.geo-library-list{padding:0 24px 24px}.geo-library-list>details{border-top:1px solid var(--line)}.geo-library-list summary{font-size:13px;padding:16px 0}.geo-library-list summary span{font:11px var(--mono);color:var(--muted);margin-left:14px}
.geo-build-links{padding:0 0 12px;list-style:none;font-size:12px;line-height:2}
.geo-excluded{margin-top:20px;font-size:12px;color:var(--muted);line-height:1.7}.geo-excluded summary{cursor:pointer}.geo-explainer{max-width:730px;margin-top:38px}.geo-explainer h2{font-size:17px;margin:0 0 14px}.geo-explainer p{font-size:12px;color:var(--muted);line-height:1.8}
@media(prefers-reduced-motion:no-preference){.geo-plot{animation:geo-appear .35s ease-out}@keyframes geo-appear{from{opacity:.2}to{opacity:1}}}
@media(max-width:1000px){.geo-workspace{grid-template-columns:240px minmax(0,1fr);gap:28px}.geo-intro-meta{display:none}.geo-results li{grid-template-columns:20px minmax(0,1fr) auto;gap:16px}.geo-result-deltas{grid-column:2}.geo-use{grid-column:3;grid-row:1/3}.geo-section-head{align-items:flex-start;flex-direction:column;gap:22px}}
@media(max-width:680px){.geometry-page{width:calc(100% - 32px);padding-top:32px}.geo-intro{padding-bottom:24px}.geo-intro h1{font-size:34px}.geo-lead{font-size:15px}.geo-toolbar{align-items:flex-start;flex-direction:column;gap:14px}.geo-toolbar>div{width:100%;justify-content:space-between}.geo-workspace{display:block}.geo-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.geo-picker{padding-bottom:20px;margin-bottom:22px}.geo-picker legend{font-size:13px;gap:7px}.geometry-page select{font-size:12px}.geo-manual{grid-template-columns:1fr;gap:0}.geo-provenance{font-size:11px}.geo-chart-heading h2{font-size:14px}.geo-measurements{gap:14px;margin-top:18px}.geo-measurements>div{padding-left:0}.geo-measurements .geo-badge{position:static;width:20px;height:20px;margin-bottom:5px}.geo-measurements strong{font-size:12px;line-height:1.6}.geo-measurements p{font-size:10px}.geo-measurements b{font-size:13px}.geo-measurements i{padding:0 3px}.geo-plot{margin-top:10px}.geo-table th,.geo-table td{padding:11px 9px}.geo-table th small{margin-left:3px}.geo-finder{margin-top:30px}.geo-section-head h2{font-size:25px}.geo-search-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;gap:18px}.geo-results li{gap:12px;padding:18px 0;grid-template-columns:18px minmax(0,1fr) 86px}.geo-result-name h3{font-size:13px;line-height:1.5}.geo-result-name h3 span{margin-left:4px}.geo-use{font-size:11px}.geo-result-deltas{gap:24px}.geo-result-deltas b{font-size:14px}.geo-library-list{padding:0 8px 16px}.geo-library>details>summary{font-size:13px}.geo-library>details>summary>span:last-child{font-size:10px}}
/* Size chips show each recorded size with its stack/reach (2026-10-26). */
.geo-size-label{margin:0 0 8px;font-size:12px;font-weight:600}.geo-size-label span{color:var(--muted);font-weight:400;font-family:var(--mono)}
.geo-size-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.geometry-page .geo-size-chip{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;min-width:64px;min-height:44px;margin:0;padding:6px 9px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);color:var(--ink);cursor:pointer;line-height:1.25}
.geo-size-chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.geo-size-name{font-weight:650;font-size:13px;color:var(--ink)}.geo-size-numbers{font:11px var(--mono);color:var(--muted)}
.geo-size-chip:hover{border-color:var(--accent)}
.geo-size-chip:has(input:checked){border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}
.geo-size-chip:has(input:checked) .geo-size-numbers{color:var(--ink)}
.geo-size-chip:has(input:focus-visible){outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:2px}
fieldset:disabled .geo-size-chip{cursor:default;opacity:.85}
/* Close-up plot: size ladders, selected A/B markers, pointer shortcuts. */
.geo-ladder path{fill:none;stroke-width:1.2;opacity:.55}.geo-ladder-a path{stroke:var(--ink)}.geo-ladder-b path{stroke:var(--accent)}
.geo-dot{cursor:pointer}.geo-dot circle{fill:var(--surface);stroke-width:1.4}.geo-ladder-a .geo-dot circle{stroke:var(--ink)}.geo-ladder-b .geo-dot circle{stroke:var(--accent)}
.geo-plot .geo-dot circle.geo-dot-hit{fill:transparent;stroke:none}.geo-dot:hover circle:not(.geo-dot-hit){stroke-width:2.4}
.geo-dot text{font:10px var(--mono);fill:var(--muted)}.geo-dot:hover text{fill:var(--ink)}
.geo-selected circle{stroke:var(--surface);stroke-width:2}.geo-line-a.geo-selected circle{fill:var(--ink)}.geo-line-b.geo-selected circle{fill:var(--accent)}
.geo-selected text{fill:var(--surface);stroke:none;font:700 10px var(--mono);pointer-events:none}
/* Measurement glossary with a generic, project-drawn frame. */
.geo-glossary{margin:18px 0 6px;border-top:1px solid var(--line);padding-top:12px}
.geo-glossary>summary{cursor:pointer;font-weight:600;font-size:14px}
.geo-glossary-figure{display:block;width:min(100%,420px);margin:14px 0 6px}
.geo-frame circle,.geo-frame path{fill:none;stroke:var(--muted);stroke-width:2;stroke-linejoin:round}
.geo-measure path{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-dasharray:4 3}
.geo-measure-label text{fill:var(--accent);font:600 11px var(--font)}
.geo-glossary dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px 24px;margin:12px 0}
.geo-glossary dt{font-weight:650;font-size:13px}.geo-glossary dd{margin:2px 0 0;color:var(--muted);font-size:12.5px;line-height:1.5}
/* Tolerance presets and compact result actions. */
.geo-presets{display:flex;gap:6px;margin-top:8px}
.geo-preset{min-width:44px;min-height:36px;padding:0 8px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink);font:12px var(--mono);cursor:pointer}
.geo-preset[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:700}
.geo-preset:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:1px}
.geo-use{white-space:nowrap}
@media(max-width:680px){.geo-search-controls{grid-template-columns:1fr}.geo-presets .geo-preset{flex:1}.geo-results li{grid-template-columns:18px minmax(0,1fr)}.geo-result-deltas{grid-column:2}.geo-use{grid-column:2;grid-row:auto;justify-content:flex-start}.geo-size-chip{min-width:56px}.geo-glossary dl{grid-template-columns:1fr}}
@media(max-width:680px){.geo-plot .geo-tick{font-size:17px}.geo-plot .geo-axis-label{font-size:18px}.geo-plot .geo-dot text{font-size:16px}.geo-plot .geo-selected text{font-size:15px}}

/* Next steps from a selected model: separate, touch-sized targets. */
.geo-next-links{display:flex;flex-wrap:wrap;gap:4px 16px;margin:6px 0 8px}.geo-next-links a{display:inline-flex;align-items:center;min-height:32px}
@media (pointer:coarse){.geo-next-links a{min-height:44px}}
