.graph-stars{position:relative;width:100%;height:100%;min-height:0;overflow:hidden;border:1px solid var(--rule);border-radius:12px 0 0 12px;background:radial-gradient(circle at 14% 15%,color-mix(in srgb,#4e9cf5 8%,transparent),transparent 30%),radial-gradient(circle at 88% 75%,color-mix(in srgb,#32c98c 7%,transparent),transparent 32%),color-mix(in srgb,var(--surface-sunken) 74%,var(--surface));color:var(--ink);isolation:isolate}[data-theme=dark] .graph-stars{background:radial-gradient(circle at 14% 15%,rgb(40 79 130 / 18%),transparent 31%),radial-gradient(circle at 88% 75%,rgb(35 119 89 / 12%),transparent 34%),#111722}.graph-stars--state{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:40px;text-align:center}.graph-stars--state h1,.graph-stars--state p{margin:0}.graph-stars__spinner{width:28px;height:28px;animation:graph-stars-spin .85s linear infinite}@keyframes graph-stars-spin{to{transform:rotate(360deg)}}.graph-stars__canvas{position:absolute;inset:0;cursor:grab}.graph-stars__canvas:active{cursor:grabbing}.graph-stars__controls,.graph-stars__search,.graph-stars__details,.graph-stars__tooltip{position:absolute;z-index:5}.graph-stars__controls{top:18px;left:18px;width:min(280px,calc(100% - 36px));padding:13px;border:1px solid color-mix(in srgb,var(--rule-strong) 84%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 12px 30px #0d1d321f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}[data-theme=dark] .graph-stars__controls,[data-theme=dark] .graph-stars__search,[data-theme=dark] .graph-stars__details,[data-theme=dark] .graph-stars__tooltip{box-shadow:0 14px 36px #00000047}.graph-stars__field,.graph-stars__control-group{display:grid;gap:7px}.graph-stars__field>span:first-child,.graph-stars__control-label{color:var(--ink-muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.graph-stars__select-wrap{position:relative;display:block}.graph-stars__select-wrap select{width:100%;min-height:38px;appearance:none;padding:0 36px 0 11px;border:1px solid var(--rule-strong);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.graph-stars__select-wrap svg{position:absolute;top:50%;right:10px;width:15px;height:15px;transform:translateY(-50%);pointer-events:none}.graph-stars__control-group{margin-top:12px}.graph-stars__segments{display:grid;grid-template-columns:repeat(4,1fr);padding:3px;border-radius:9px;background:var(--surface-sunken)}.graph-stars__segments button,.graph-stars__layer-buttons button,.graph-stars__view-controls button{min-width:0;border:0;color:var(--ink-muted);font:inherit;cursor:pointer}.graph-stars__segments button{min-height:31px;border-radius:7px;background:transparent;font-size:12px;font-weight:650}.graph-stars__segments button:hover,.graph-stars__segments button.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 5px #192a431f}.graph-stars__layer-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.graph-stars__layer-buttons button{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:6px;min-height:37px;padding:7px 9px;border:1px solid var(--rule);border-radius:8px;background:var(--surface);font-size:11px;font-weight:650;line-height:1.15;text-align:left}.graph-stars__layer-buttons button:hover:not(:disabled),.graph-stars__layer-buttons button.is-active{border-color:color-mix(in srgb,var(--accent) 52%,var(--rule));background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--ink)}.graph-stars__layer-buttons button:disabled{cursor:not-allowed;opacity:.45}.graph-stars__layer-buttons svg{width:14px;height:14px}.graph-stars__layer-buttons button>span{min-width:20px;padding:2px 5px;border-radius:999px;background:var(--surface-sunken);font-size:10px;text-align:center}.graph-stars__lean-button svg{color:#d0a80f}.graph-stars__view-controls{display:grid;grid-template-columns:34px 34px 1fr;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--rule)}.graph-stars__view-controls button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border:1px solid var(--rule);border-radius:8px;background:var(--surface);font-size:12px;font-weight:650}.graph-stars__view-controls button:hover{border-color:var(--ink-faint);color:var(--ink)}.graph-stars__view-controls svg{width:15px;height:15px}.graph-stars__search{top:18px;right:18px;display:grid;grid-template-columns:auto minmax(150px,260px) auto;align-items:center;gap:8px;min-height:46px;padding:5px 6px 5px 12px;border:1px solid color-mix(in srgb,var(--rule-strong) 84%,transparent);border-radius:11px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 12px 30px #0d1d321a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.graph-stars__search>svg{width:17px;height:17px;color:var(--ink-muted)}.graph-stars__search input{min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:13px}.graph-stars__search input::placeholder{color:var(--ink-faint)}.graph-stars__search>button{min-height:34px;padding:0 13px;border:0;border-radius:7px;background:var(--accent);color:#fff;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.graph-stars__search>button:disabled{cursor:default;opacity:.48}.graph-stars__suggestions{position:absolute;top:calc(100% + 7px);right:0;width:min(390px,calc(100vw - 36px));overflow:hidden;border:1px solid var(--rule-strong);border-radius:10px;background:var(--surface);box-shadow:0 18px 44px #0d1d322e}.graph-stars__suggestions button{display:grid;gap:3px;width:100%;padding:10px 12px;border:0;border-bottom:1px solid var(--rule);background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.graph-stars__suggestions button:last-child{border-bottom:0}.graph-stars__suggestions button:hover{background:var(--surface-sunken)}.graph-stars__suggestions span{font-size:13px;font-weight:650}.graph-stars__suggestions small{color:var(--ink-muted);font-size:11px}.graph-stars__suggestions p{margin:0;padding:13px;color:var(--ink-muted);font-size:12px}.graph-stars__tooltip{max-width:260px;padding:8px 10px;border:1px solid var(--rule-strong);border-radius:8px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 10px 30px #0d1d322e;pointer-events:none;transform:translate(16px,16px)}.graph-stars__tooltip strong,.graph-stars__tooltip span,.graph-stars__tooltip em{display:block}.graph-stars__tooltip strong{font-family:var(--font-serif);font-size:13px;line-height:1.25}.graph-stars__tooltip span{margin-top:4px;color:var(--ink-muted);font-size:10px}.graph-stars__tooltip em{margin-top:5px;color:#b28a00;font-size:10px;font-style:normal;font-weight:700}.graph-stars__details{top:14px;right:14px;bottom:14px;display:flex;flex-direction:column;width:min(390px,calc(100% - 28px));padding:19px 19px 15px;border:1px solid var(--rule-strong);border-radius:13px;background:color-mix(in srgb,var(--surface) 97%,transparent);box-shadow:-12px 0 44px #0d1d322e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.graph-stars__details-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:31px;height:31px;border:1px solid var(--rule);border-radius:8px;background:var(--surface);color:var(--ink-muted);cursor:pointer}.graph-stars__details-close:hover{color:var(--ink)}.graph-stars__details-close svg{width:16px;height:16px}.graph-stars__details-head{display:flex;align-items:center;gap:7px;padding-right:38px;color:var(--ink-muted);font-size:10px;font-weight:700;letter-spacing:.045em;text-transform:uppercase}.graph-stars__details-head span:last-child{margin-left:auto}.graph-stars__topic-dot{width:9px;height:9px;border-radius:999px;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 12%,transparent)}.graph-stars__details h2{margin:13px 34px 9px 0;font-family:var(--font-serif);font-size:clamp(20px,2vw,27px);line-height:1.13}.graph-stars__badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:13px}.graph-stars__badges>span{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid var(--rule);border-radius:999px;background:var(--surface-sunken);color:var(--ink-muted);font-size:10px;font-weight:650;text-transform:capitalize}.graph-stars__badges .graph-stars__lean-badge{border-color:color-mix(in srgb,#d0a80f 48%,var(--rule));background:color-mix(in srgb,#f7df6d 15%,var(--surface));color:color-mix(in srgb,#a17700 84%,var(--ink))}.graph-stars__lean-badge svg{width:12px;height:12px}.graph-stars__details-body{min-height:0;overflow-y:auto;padding:8px 0;border-top:1px solid var(--rule);scrollbar-width:thin}.graph-stars__statement{color:var(--ink);font-family:var(--font-serif);font-size:14px;line-height:1.55}.graph-stars__statement>:first-child,.graph-stars__references .prose>:first-child{margin-top:0}.graph-stars__statement>:last-child,.graph-stars__references .prose>:last-child{margin-bottom:0}.graph-stars__detail-state{display:flex;align-items:center;gap:7px;color:var(--ink-muted);font-size:12px}.graph-stars__detail-state svg{width:15px;height:15px;animation:graph-stars-spin .85s linear infinite}.graph-stars__relations{margin:0;padding:0}.graph-stars__relations h3,.graph-stars__references h3{margin:0 0 8px;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.graph-stars__relations ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.graph-stars__relations button{display:grid;grid-template-columns:1fr;align-items:center;gap:5px;width:100%;padding:8px 9px;border:1px solid var(--rule);border-radius:8px;background:var(--surface-sunken);color:var(--ink-muted);font:inherit;font-size:11px;line-height:1.35;text-align:left;cursor:pointer}.graph-stars__relations button:hover:not(:disabled){border-color:var(--rule-strong);color:var(--ink)}.graph-stars__relations strong{padding-inline:7px;color:var(--ink)}.graph-stars__relations small{color:var(--ink-faint);font-size:9px;font-weight:700;text-transform:uppercase}.graph-stars__relations p,.graph-stars__references .prose{color:var(--ink-muted);font-size:12px;line-height:1.5}.graph-stars__open-problem{display:flex;align-items:center;justify-content:center;gap:7px;min-height:39px;margin-top:auto;border-radius:8px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;text-decoration:none}.graph-stars__open-problem:hover{filter:brightness(1.06)}.graph-stars__open-problem svg{width:14px;height:14px}@media(max-width:800px){.graph-stars{border-radius:0}.graph-stars__controls{top:10px;left:10px;width:238px;padding:10px}.graph-stars__layer-buttons{grid-template-columns:1fr}.graph-stars__search{top:10px;right:10px;grid-template-columns:auto minmax(100px,1fr);width:min(300px,calc(100% - 268px))}.graph-stars__search>button{display:none}.graph-stars__details{inset:auto 8px 8px;width:auto;max-height:72%}}@media(max-width:570px){.graph-stars__controls{right:8px;left:8px;width:auto}.graph-stars__field,.graph-stars__control-group{grid-template-columns:70px 1fr;align-items:center}.graph-stars__layer-buttons{grid-template-columns:1fr 1fr}.graph-stars__search{inset:auto 8px 48px;width:auto}}@media(prefers-reduced-motion:reduce){.graph-stars__spinner,.graph-stars__detail-state svg{animation-duration:1.8s}}.graph-stars__impact{display:flex;flex-wrap:wrap;gap:4px 8px;margin:0 0 10px;color:var(--ink-muted);font-size:11px;line-height:1.4}.graph-stars__impact:empty{display:none}.graph-stars__impact span+span:before{content:"·";margin-right:8px}.graph-stars__empty{position:absolute;top:65%;left:50%;transform:translate(-50%);color:var(--ink-muted);font-size:14px;text-align:center}.graph-stars__relation-type{--relation-color: #52657a;justify-self:start;padding:3px 7px;border-radius:5px;color:var(--relation-color);background:color-mix(in srgb,var(--relation-color) 12%,var(--surface));font-size:11px;font-weight:700}.graph-stars__relation-type[data-relation=implies]{--relation-color: #1466ad}.graph-stars__relation-type[data-relation=depends_on]{--relation-color: #a34b14}.graph-stars__relation-type[data-relation=generalizes]{--relation-color: #087d65}.graph-stars__relation-type[data-relation=special_case]{--relation-color: #9a376f}.graph-stars__relation-type[data-relation=equivalent_under]{--relation-color: #7545b5}[data-theme=dark] .graph-stars__relation-type{color:color-mix(in srgb,var(--relation-color) 45%,white)}.graph-stars__controls .graph-stars__field{display:grid;grid-template-columns:1fr;gap:6px;margin-bottom:10px}.graph-stars__controls .graph-stars__layer-buttons{grid-template-columns:1fr}.graph-stars__layer-buttons button[role=switch]{display:flex;justify-content:space-between;font-size:12px}.graph-stars__layer-buttons button[role=switch]:after{content:"";flex:0 0 28px;width:28px;height:16px;border-radius:9px;background:radial-gradient(circle at 8px 8px,var(--surface) 5px,transparent 6px),var(--ink-muted)}.graph-stars__layer-buttons button[aria-checked=true]:after{background:radial-gradient(circle at 20px 8px,white 5px,transparent 6px),var(--accent)}.graph-stars__minimum-links{display:grid;gap:6px;margin:4px 0 12px;font-size:12px;color:var(--ink-muted)}.graph-stars__minimum-links>span{display:flex;justify-content:space-between;align-items:baseline}.graph-stars__minimum-links output{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.graph-stars__minimum-links input{width:100%;margin:0;accent-color:var(--accent);cursor:pointer;min-height:24px}.graph-stars__summary-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:10px}.graph-stars__summary-row .graph-stars__badges{order:-1;margin:0}.graph-stars__summary-row .graph-stars__impact{margin:0}
