@font-face{font-family:"Corollary Math";font-style:normal;font-weight:400;font-display:swap;src:url(./corollary-math-CLiUL0-3.woff2) format("woff2");unicode-range:U+002B-002F,U+003D,U+005E,U+0072,U+007C,U+00B1,U+00D7,U+00F7,U+0398,U+03B1,U+03B3,U+03B8,U+03BB-03BC,U+03C0,U+03C3,U+03C6,U+2026,U+2032,U+2102,U+211D,U+212D,U+2135,U+2192,U+21D2,U+21D4,U+2200,U+2202-2203,U+2205,U+2207-2209,U+2211-2212,U+221A,U+221E,U+2229-222B,U+2234-2235,U+2248,U+2260,U+2264-2265,U+2282,U+2286,U+1D520}@font-face{font-family:"Corollary Math";font-style:normal;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,d09GMgABAAAAAAPkAA8AAAAAByQAAAOMAAID1wAAAAAAAAAAAAAAAAAAAAAAAAAAGhgbIBxCBmA/U1RBVF4ATBEICoMcgmcBNgIkAxgLDgAEIAWENgcgG9oFAJ4FdsN1UTRTHYhHGXD5EMqI/9jvdc99L0CoozNRUUDCR2EVsOvXGV9FQgErsjWmqra2sv1HeVV1kgXcw4VzKylDZPoovCi8TaTevXAVKrAmk/nAscX5/z/X1IsCPK2PF44ZyyKONhrOR4mzWT4/wNFswgOS1m2iR12CZMxpVSoEw4AojSCCQcvCob2DmhZw1EI3IBi0q4A9Zpn0DOcNkDTKIawhHHt5pZ59HDH1YkBtbysr88COuqE6gFN7qTnDpgjUkB3F2DEUxQCTQAAOu74cTsIHPI+J//8EtOeZCSBQ83UZWGcvol+DaTS2UI+vNAQBj4doEILcesAZUD5Kr1lCNEplHkB9BRBRyaMAGqVSABBQVAgjj2PsAIP6lfIhrByPw/P+J34a26+PvJj8ggACQKTbGKIXDKMPT4HnAPpfyvDH7K45N1fXsCH1MGr/cWYtGn/YecbFqLydD1xm3oPOvps5LS79nVW+LiuvbGbv3oUccDnYOXSQdmm9OQk6p1xmnkHjT3fPuI/GP4BV22Y+iFffd55xFzr32mfeAoOrg9su5vp7tNBeXkZ1Vpyw9ULr3av/1yGXmTcQSn4VnMabp4x774/rw8PtF8ZfLAmLLajISxdsiSpqqDkDt7+vjxP9Jju6sK6pOV1UVSCOjc56wxyMvpgp25WxI5fOfpmV+CI79yu8Xlpbyxt0lXxjbZ1Vr6sgTXlxkXWNDZF1cbHSusZ6aT0cfl9wJuNJzG5KNx+H6cs4uXFQC1rvE9UnDAmv8Ne/YHcWIK/VkKiwuFUJYWDfBw3/njOAqR2CqsI+AYRqHqDaPy39Hjl/HWn6I+DXuDsf4Lf8ZM7fhf8Y559MLNCrQPhy2aF5BPPrmZ7Z7VborQ596ROYeZC+5n1iFH43hN54CTSSveh+rWDYM6CldQK+AMQQk/ZDGfUTGtvuQ2szrtBjMQlir/VUSBAYjgYQDIZAHteMQfPJGWkt4JwlUMzMYjielpoGgbGSsFhYCw0lrI4ZYYY14JnpKMkRWKHBCA0zng0WxbOSsLDJkiiRmhZqp8FkEsiZGSUysZ5HxcyEsElkwCG0TOKp8ZSU9OLJe1xsYKAlF93TNZtxTGyaKKkNZsDhsRIkSZYqW7l69cplZzpjRrz0Y56FZ6ON8qzztMxMcK3h+DvtlLesxZyWAtEzd+AZcQwqEdwpw6abQrmb0UAXlgMA) format("woff2");unicode-range:U+00B2,U+1D47,U+2080,U+2090}:root{--page: #ff964f;--ink: #14171f;--surface: #2b303d;--raised: #363c4a;--border: #474e5e;--text: #f4f1ec;--muted: #a9afbd;--primary-hover: #ffa56b;--logo: #ffffff;--cold: #6db3ff;--warm: #ffd166;--hot: #ff5d5d;--bg-symbol: #5a606e;--bg-symbol-opacity: .25;--sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--math: "Corollary Math", var(--sans);--radius: 10px;--radius-sm: 6px;--gap: 14px;--shadow: 0 2px 10px rgb(20 23 31 / 25%)}*,*:before,*:after{box-sizing:border-box}button,input,select,textarea{font:inherit}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--page);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}#backdrop{position:fixed;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;left:50%;top:4px;transform:translate(-50%,-200%);z-index:20;background:var(--ink);color:var(--text);padding:8px 14px;border-radius:var(--radius-sm);text-decoration:none}.skip-link:focus-visible{transform:translate(-50%)}.page-header{display:flex;justify-content:center;padding:16px 16px 0}@media (max-width: 600px){.page-header{padding-top:12px}}.page-main{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:14px 16px 24px}.page-main:focus{outline:none}.page-footer{max-width:1280px;margin:0 auto;padding:8px 16px 32px;color:var(--ink);font-size:.85rem}.page-footer p{margin:4px 0}.page-footer a,.page-footer .link-button{color:var(--ink);text-underline-offset:2px}.link-button{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}.panel{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);font-size:.94rem}.panel-pad{padding:13px}h2,h3{line-height:1.25;margin:0 0 7px}.panel h2{font-size:1.15rem}.panel h3{font-size:1rem}.muted{color:var(--muted)}.math{font-family:var(--math)}.mono{font-family:var(--mono);font-size:.9em}.btn{font:inherit;font-weight:600;cursor:pointer;border:1px solid transparent;border-radius:var(--radius-sm);padding:10px 16px;min-height:44px;background:var(--ink);color:var(--text)}.btn:hover{background:#1f2430}.btn.secondary{background:transparent;color:var(--ink);border-color:var(--ink)}.btn.secondary:hover{background:#14171f1a}.panel .btn,.btn.primary{background:var(--page);color:var(--ink);border-color:transparent}.panel .btn:hover,.btn.primary:hover{background:var(--primary-hover)}.panel .btn.ghost{background:var(--raised);color:var(--text);border-color:var(--border)}.panel .btn.ghost:hover{background:#2f3542}.btn.small{padding:6px 10px;min-height:36px;font-size:.9rem;font-weight:500}.btn[disabled]{opacity:.45;cursor:not-allowed}:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.panel :focus-visible{outline-color:var(--page)}input,select{font:inherit;color:var(--text);background:var(--raised);border:1px solid var(--muted);border-radius:var(--radius-sm);padding:9px 11px;min-height:44px;width:100%}input::placeholder{color:var(--muted)}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:2px 9px;font-size:.78rem;font-weight:600;letter-spacing:.02em;background:var(--raised);color:var(--muted);border:1px solid var(--border);white-space:nowrap}.badge.kind-axiom{color:#ffd9bd}.badge.kind-definition{color:#bfe0ff}.badge.hub{color:var(--ink);background:var(--warm);border-color:transparent}.badge.close-hot{color:var(--hot);border-color:var(--hot)}.badge.close-warm{color:var(--warm);border-color:var(--warm)}.badge.close-cold{color:var(--cold);border-color:var(--cold)}.logo{position:relative;width:clamp(300px,44vw,820px);aspect-ratio:3.14 / 1;color:var(--logo)}.logo-art{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.logo-art svg{width:100%;height:100%;display:block}.logo-letters{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.logo-word{display:flex;align-items:baseline;justify-content:center}.logo-svg .logo-letters,.logo-svg .logo-word{display:block}.logo-letter{flex:0 0 auto;min-width:24px;padding:0;font-size:inherit;line-height:1;text-align:center;margin-block:0;margin-inline:calc(-.02em + var(--letter-nudge, 0em) + var(--letter-kern, 0em)) calc(-.02em - var(--letter-nudge, 0em));display:flex;align-items:center;justify-content:center;background:none;border:0;color:inherit;cursor:pointer;position:relative;text-shadow:0 2px 10px rgb(20 23 31 / 32%)}.logo-svg .logo-letter{position:absolute;top:0;bottom:0;padding:0}.logo-glyph{font-size:calc(.53em * var(--letter-scale, 1));line-height:1;pointer-events:none}.logo-letters{font-size:calc(clamp(300px,44vw,820px) / 3.14)}.glyph{font-family:"Corollary Math",serif}.logo-letter:after{content:"";position:absolute;left:50%;bottom:4%;width:0;height:3px;border-radius:2px;background:var(--ink);transform:translate(-50%);transition:width .12s ease-out}.logo.no-motion .logo-letter:after{transition:none}.logo-letter:hover:after,.logo-letter[aria-expanded=true]:after{width:52%}.logo-letter:focus-visible{outline:3px solid var(--ink);outline-offset:-2px;border-radius:6px}.bubble{position:fixed;z-index:30;width:max-content;min-width:240px;max-width:min(360px,calc(100vw - 16px));padding:14px 16px;font-size:1rem;text-align:left}.bubble[hidden]{display:none}.bubble-pointer{position:absolute;top:-6px;width:12px;height:12px;background:var(--surface);border-left:1px solid var(--border);border-top:1px solid var(--border);transform:translate(-50%) rotate(45deg)}.bubble-symbol{display:block;font-size:2.4rem;line-height:1.1;color:var(--page)}.bubble-name{margin:2px 0 6px;font-weight:600;color:var(--text)}.bubble-text{margin:0;color:var(--muted);font-family:var(--sans),"Corollary Math"}.bubble-credit{margin:6px 0 0;color:var(--muted);font-size:.8rem}.term{font:inherit;line-height:1;color:inherit;background:none;border:0;padding:0;cursor:pointer;position:relative;text-decoration:none;transition:color .12s ease-out}.term:after{content:"";position:absolute;left:50%;bottom:-.06em;width:90%;height:1px;border-radius:1px;background:var(--text);transform:translate(-50%);transition:height .12s ease-out}.term:hover,.term[aria-expanded=true]{color:var(--page)}.term:hover:after,.term[aria-expanded=true]:after{height:2px}@media (prefers-reduced-motion: reduce){.term,.term:after{transition:none}}@media (max-width: 520px){.bubble{min-width:0;width:calc(100vw - 16px);max-width:calc(100vw - 16px)}}.loading{max-width:560px;margin:0 auto}.loading-line{display:flex;align-items:center;gap:10px;margin:0 0 6px}.spinner{width:14px;height:14px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--page);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation:none}}.small{font-size:.85rem}.screen{display:grid;gap:var(--gap)}.intro p,.daily p,.picker p{margin:0 0 8px}p.daily-note{margin:16px 0 0}.intro code{background:var(--raised);padding:1px 5px;border-radius:4px}.picker-fields{display:grid;gap:12px;grid-template-columns:1fr;margin-bottom:12px}@media (min-width: 720px){.picker-fields{grid-template-columns:1fr 1fr}}.search-field label{display:block;font-weight:600;margin-bottom:4px}.search-field .muted.small{margin:4px 0 0}.search-results{list-style:none;margin:6px 0 0;padding:0;max-height:320px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--raised)}.search-results[hidden]{display:none}.search-hit{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--border);color:var(--text);font:inherit;padding:9px 12px;cursor:pointer}.search-hit:hover,.search-hit:focus-visible{background:#2f3542}.search-hit-name{font-weight:600}.search-hit-label{margin-left:6px;color:var(--muted)}.search-hit-blurb{display:block;font-size:.85rem}.search-chosen{margin:8px 0 0;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.search-chosen[hidden]{display:none}select{width:auto;min-width:190px}.stat-row{list-style:none;display:flex;flex-wrap:wrap;gap:18px;margin:0;padding:0;color:var(--muted)}.stat-row strong{color:var(--text);font-size:1.15rem}.game-header{display:grid;gap:10px}.game-target{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:1rem}.game-controls .spacer{flex:1}.game-status{gap:10px}.toggle{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.85rem;cursor:pointer}.toggle input{width:auto;min-height:0;accent-color:var(--page)}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:.9rem}.crumb{background:var(--raised);border:1px solid var(--border);border-radius:999px;color:var(--text);font-family:var(--mono);font-size:.82rem;padding:3px 10px;min-height:32px;cursor:pointer}.crumb.here{background:var(--page);color:var(--ink);border-color:transparent;font-weight:600}.crumb-arrow,.crumb-target{color:var(--muted)}.crumb-target{border:1px dashed var(--border);border-radius:999px;padding:3px 10px;font-size:.82rem}.game-notice{background:var(--ink);color:var(--text);border-radius:var(--radius-sm);padding:10px 14px;margin:0}.game-notice[hidden]{display:none}.tabs{display:flex;gap:6px}.tab{flex:1;background:var(--raised);border:1px solid var(--border);color:var(--muted);font:inherit;font-weight:600;padding:9px;min-height:44px;border-radius:var(--radius-sm);cursor:pointer}.tab.active{background:var(--page);color:var(--ink);border-color:transparent}@media (min-width: 900px){.tabs{display:none}}.game-panes{display:grid;gap:var(--gap)}@media (max-width: 899px){.game-panes[data-tab=theorem] .pane-graph,.game-panes[data-tab=graph] .pane-theorem{display:none}}@media (min-width: 900px){.game-panes{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start}}.graph-panel{display:flex;flex-direction:column;overflow:hidden}.graph-frame{min-height:300px;height:clamp(300px,52vh,560px);overflow:auto;padding:8px}.graph-frame svg{display:block;min-width:100%;height:100%}.graph-footer{display:flex;flex-wrap:wrap;gap:14px;padding:10px 14px;border-top:1px solid var(--border);font-size:.82rem}.edge{stroke:var(--border);stroke-width:1.5}.edge.on-route{stroke:var(--page);stroke-width:2.5;stroke-dasharray:6 4}.edge.on-path{stroke:var(--text);stroke-width:3;stroke-dasharray:none}.arrowhead{fill:var(--border)}.node{cursor:pointer}.node-dot{fill:var(--raised);stroke:var(--border);stroke-width:1.5}.node-label{fill:var(--muted);font-family:var(--mono);font-size:11px}.node-hops{fill:var(--ink);font-size:12px;font-weight:700}.node.on-path .node-dot{stroke:var(--text);stroke-width:2}.node.on-route .node-dot{stroke:var(--page);stroke-width:2.5}.node.on-path.on-route .node-dot{stroke-dasharray:4 3}.node.current .node-dot{fill:var(--page)}.node.current .node-label,.node.start .node-label,.node.target .node-label{fill:var(--text);font-weight:600}.node.start .node-dot{fill:var(--text)}.node.target .node-dot{fill:var(--page);stroke:var(--text);stroke-width:3}.node.selected .node-dot{stroke:var(--text);stroke-width:3}.node.band-hot .node-dot{fill:var(--hot)}.node.band-warm .node-dot{fill:var(--warm)}.node.band-cold .node-dot{fill:var(--cold)}.node.band-target .node-dot{fill:var(--page)}.node:focus-visible .node-dot{stroke:var(--page);stroke-width:3}.legend{display:flex;flex-wrap:wrap;gap:10px}.legend-item:before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;background:var(--muted)}.legend-item.band-hot:before{background:var(--hot)}.legend-item.band-warm:before{background:var(--warm)}.legend-item.band-cold:before{background:var(--cold)}.legend-item.band-target:before{background:var(--page)}.theorem-panel{max-height:none}.theorem-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}.theorem-label{font-size:1.15rem;margin:0;word-break:break-all}.badge.current{background:var(--page);color:var(--ink);border-color:transparent}.theorem-statement{background:var(--raised);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;margin:9px 0;overflow-x:auto;white-space:pre-wrap;word-break:break-word;font-size:.82rem;line-height:1.55}.placeholder{color:var(--muted);font-style:italic}.theorem-description p{margin:0 0 10px;font-family:var(--sans),"Corollary Math"}.ref{background:none;border:0;padding:0;font-family:var(--mono);font-size:.9em;color:var(--page);text-decoration:underline;cursor:pointer}.theorem-link a{color:var(--page)}.neighbour-group{border-top:1px solid var(--border);padding-top:12px;margin-top:12px}.neighbour-group h3{margin:0;font-size:1rem}.neighbour-group .count{font-weight:400;font-size:.85rem}.neighbour-group .hint{margin:0 0 8px;font-size:.82rem}.neighbours{list-style:none;margin:0;padding:0;max-height:340px;overflow-y:auto}.neighbours li{display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--border)}.neighbour{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;background:none;border:0;color:var(--text);font:inherit;text-align:left;padding:9px 2px;cursor:pointer}.neighbour:hover,.neighbour:focus-visible{background:var(--raised)}.neighbour-label{font-weight:600}.neighbour-blurb{color:var(--muted);font-size:.82rem;flex:1 1 100%}.go{flex:0 0 auto}.results h2{margin-top:0}.results-line{font-size:1rem;margin:0 0 6px}.results-actions{margin-top:12px}.share-feedback[hidden]{display:none}.routes h3{margin-top:16px}.routes h3:first-child{margin-top:0}.route-list{list-style:none;margin:0 0 10px;padding:0;counter-reset:route}.route-list li{counter-increment:route}.route{display:block;width:100%;text-align:left;background:var(--raised);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;padding:9px 12px;margin-bottom:6px;cursor:pointer}.route[hidden]{display:none}.route:hover{border-color:var(--page)}.route.chosen{border-color:var(--page);box-shadow:inset 3px 0 0 var(--page)}.route-path{display:block;font-size:.85rem;word-break:break-word}.route-meta{display:block;font-size:.78rem;margin-top:3px}.banner{position:fixed;left:50%;bottom:16px;transform:translate(-50%);z-index:40;display:flex;gap:12px;align-items:center;max-width:min(560px,calc(100vw - 32px));background:var(--ink);color:var(--text);border-radius:var(--radius-sm);padding:10px 14px;box-shadow:var(--shadow);font-size:.9rem}.banner .link-button{color:var(--page);flex:0 0 auto}.difficulty>p{margin:0 0 10px}.difficulty-options{display:grid;gap:8px;grid-template-columns:1fr}@media (min-width: 680px){.difficulty-options{grid-template-columns:repeat(3,1fr)}}.difficulty-option{display:grid;gap:1px;text-align:left;font:inherit;cursor:pointer;background:var(--raised);border:1px solid var(--muted);border-radius:var(--radius-sm);padding:10px 12px;color:var(--text)}.difficulty-option:hover{border-color:var(--page)}.difficulty-option.chosen{border-color:var(--page);box-shadow:inset 3px 0 0 var(--page)}.difficulty-name{font-weight:700;font-size:1rem}.difficulty-blurb{color:var(--text);font-size:.86rem}.difficulty-size{font-size:.8rem}.difficulty-option[disabled]{opacity:.55;cursor:progress}.difficulty-option.chosen[disabled]{opacity:1}.difficulty>.difficulty-note{margin:10px 0 0}.difficulty>.difficulty-note:empty{display:none}.picker-tier{margin:0 0 10px}.picker-tier label{display:flex;gap:8px;align-items:center}.picker-tier select{appearance:none;-webkit-appearance:none;min-width:0;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23a9afbd' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:10px 6px}.theorem-title{font-size:1.1rem;margin:0 0 5px;line-height:1.3}.theorem-title.mono{font-size:1.02rem;word-break:break-all}.theorem-tags{gap:6px}.theorem-rawlabel{color:var(--muted);font-size:.8rem}.theorem-explain{margin:0 0 9px;font-size:.98rem;color:var(--text)}.neighbour-row{display:flex;gap:8px;align-items:center}.neighbours li{display:block;padding:4px 0}.chain-toggle{background:none;border:0;padding:0 0 4px 2px;font:inherit;font-size:.78rem;color:var(--muted);text-decoration:underline;text-decoration-style:dotted;cursor:pointer}.chain-toggle:hover{color:var(--page)}.chain-direct{margin:0 0 4px 2px;font-size:.78rem}.chain{margin:0 0 6px 2px;padding:6px 8px;background:var(--raised);border-left:2px solid var(--border);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.72rem;color:var(--muted);overflow-wrap:anywhere}.node-label.wrapped{font-family:var(--sans);font-size:10.5px}
