.FocusAreas-module__N27dha__section{border-block:1px solid var(--border);background:var(--surface)}.FocusAreas-module__N27dha__context{color:var(--foreground-tertiary);letter-spacing:.035em;text-transform:uppercase;font-size:.72rem;font-weight:620;line-height:1.45}.FocusAreas-module__N27dha__axes{border-top:1px solid var(--border-strong);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.FocusAreas-module__N27dha__axis{flex-direction:column;min-width:0;min-height:20rem;padding:clamp(1.45rem,2.6vw,2.15rem) clamp(1rem,2.4vw,2rem) 0;display:flex}.FocusAreas-module__N27dha__axis:first-child{padding-left:0}.FocusAreas-module__N27dha__axis:last-child{padding-right:0}.FocusAreas-module__N27dha__axis+.FocusAreas-module__N27dha__axis{border-left:1px solid var(--border)}.FocusAreas-module__N27dha__context{color:var(--accent);text-transform:none}.FocusAreas-module__N27dha__axis h3{margin-top:1rem;font-size:clamp(1.45rem,2.2vw,1.85rem)}.FocusAreas-module__N27dha__itemDescription{max-width:39ch;color:var(--foreground-secondary);margin-top:1rem;font-size:.93rem;line-height:1.72}.FocusAreas-module__N27dha__methods{color:var(--foreground-tertiary);flex-wrap:wrap;gap:.35rem .75rem;margin-top:1.3rem;font-size:.73rem;line-height:1.55;list-style:none;display:flex}.FocusAreas-module__N27dha__methods li:not(:last-child):after{color:var(--border-strong);content:"·";margin-left:.75rem}.FocusAreas-module__N27dha__link{min-height:2.75rem;color:var(--foreground);align-self:flex-start;align-items:center;gap:.45rem;margin-top:auto;font-size:.78rem;font-weight:650;display:inline-flex}.FocusAreas-module__N27dha__link span:last-child{color:var(--accent);transition:transform var(--motion-fast) var(--ease-standard)}.FocusAreas-module__N27dha__link:hover span:first-child{text-underline-offset:.22em;text-decoration:underline}.FocusAreas-module__N27dha__link:hover span:last-child{transform:translate(3px)}@media (max-width:900px){.FocusAreas-module__N27dha__axes{grid-template-columns:1fr}.FocusAreas-module__N27dha__axis,.FocusAreas-module__N27dha__axis:first-child,.FocusAreas-module__N27dha__axis:last-child{grid-template-columns:8rem minmax(0,.78fr) minmax(18rem,1.22fr);gap:.7rem 1.5rem;min-height:0;padding:1.75rem 0;display:grid}.FocusAreas-module__N27dha__axis+.FocusAreas-module__N27dha__axis{border-top:1px solid var(--border);border-left:0}.FocusAreas-module__N27dha__axis h3,.FocusAreas-module__N27dha__itemDescription{margin-top:0}.FocusAreas-module__N27dha__methods,.FocusAreas-module__N27dha__link{grid-column:3}.FocusAreas-module__N27dha__methods{margin-top:.25rem}.FocusAreas-module__N27dha__link{margin-top:.35rem}}@media (max-width:640px){.FocusAreas-module__N27dha__axis,.FocusAreas-module__N27dha__axis:first-child,.FocusAreas-module__N27dha__axis:last-child{min-height:0;padding-block:1.65rem;display:flex}.FocusAreas-module__N27dha__axis h3{margin-top:.7rem}.FocusAreas-module__N27dha__itemDescription{margin-top:.75rem}.FocusAreas-module__N27dha__methods{margin-top:1rem}.FocusAreas-module__N27dha__link{margin-top:.85rem}}@media (prefers-reduced-motion:reduce){.FocusAreas-module__N27dha__link span:last-child{transition:none}}
.AdaptivePathLab-module__C2cy_q__lab{--lab-canvas:var(--background,#f1f2f4);--lab-surface:var(--surface,#f8f8f7);--lab-subtle:var(--surface-subtle,#e4e6eb);--lab-text:var(--foreground,#181a21);--lab-soft:var(--foreground-secondary,#505662);--lab-muted:var(--foreground-tertiary,#606874);--lab-line:var(--border,#ccd1d9);--lab-line-strong:var(--border-strong,#a6adb8);--lab-control-line:var(--control-border,#7c838f);--lab-deep:var(--foreground,#181a21);--lab-accent:var(--accent,#263a5f);--lab-accent-soft:var(--accent-soft,#e0e5ee);--lab-accent-contrast:var(--accent-contrast,#fff);border:1px solid var(--lab-line-strong);background:var(--lab-surface);width:100%;color:var(--lab-text);border-radius:4px;padding:clamp(.75rem,1.4vw,1rem);overflow:hidden}.AdaptivePathLab-module__C2cy_q__header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem 1rem;margin-bottom:.5rem;display:grid}.AdaptivePathLab-module__C2cy_q__introduction{min-width:0}.AdaptivePathLab-module__C2cy_q__metaLine{align-items:center;gap:.45rem .75rem;min-width:0;margin-bottom:.15rem;display:flex}.AdaptivePathLab-module__C2cy_q__figureLabel,.AdaptivePathLab-module__C2cy_q__algorithm{font-family:var(--font-mono,monospace);letter-spacing:.06em;white-space:normal;font-size:.66rem;font-weight:600;line-height:1.35}.AdaptivePathLab-module__C2cy_q__figureLabel{color:var(--lab-accent);text-transform:uppercase;align-items:center;gap:.55rem;display:inline-flex}.AdaptivePathLab-module__C2cy_q__figureLabel:after{background:var(--lab-line-strong);content:"";width:1.75rem;height:1px}.AdaptivePathLab-module__C2cy_q__algorithm{color:var(--lab-muted);letter-spacing:.015em;flex:0 auto}.AdaptivePathLab-module__C2cy_q__introduction h2{color:var(--lab-text);font-family:var(--font-sans,"Inter", "Segoe UI", sans-serif);letter-spacing:-.03em;white-space:normal;font-size:clamp(1.08rem,1.6vw,1.35rem);font-weight:680;line-height:1.16}.AdaptivePathLab-module__C2cy_q__description{max-width:58ch;color:var(--lab-soft);white-space:normal;font-size:clamp(.72rem,.92vw,.8rem);line-height:1.4}.AdaptivePathLab-module__C2cy_q__modeSelector{border:0;min-width:0;margin:0;padding:0}.AdaptivePathLab-module__C2cy_q__visuallyHidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.AdaptivePathLab-module__C2cy_q__modeButtons{border:1px solid var(--lab-control-line);background:var(--lab-subtle);border-radius:3px;grid-template-columns:repeat(2,minmax(0,1fr));width:clamp(9.25rem,13vw,10.5rem);display:grid;overflow:hidden}.AdaptivePathLab-module__C2cy_q__modeButton{border:0;border-right:1px solid var(--lab-line);min-width:0;min-height:44px;color:var(--lab-soft);text-align:center;cursor:pointer;background:0 0;border-radius:0;padding:.45rem .65rem;font-size:.72rem;font-weight:650;transition:background-color .18s,color .18s}.AdaptivePathLab-module__C2cy_q__modeButton:last-child{border-right:0}.AdaptivePathLab-module__C2cy_q__modeButton:hover{background:var(--lab-surface);color:var(--lab-text)}.AdaptivePathLab-module__C2cy_q__modeButtonActive,.AdaptivePathLab-module__C2cy_q__modeButtonActive:hover{background:var(--lab-accent);color:var(--lab-accent-contrast)}.AdaptivePathLab-module__C2cy_q__canvasFrame{isolation:isolate;aspect-ratio:8/5;border:1px solid var(--lab-line);background:var(--lab-canvas);border-radius:2px;width:100%;position:relative;overflow:hidden}.AdaptivePathLab-module__C2cy_q__lab[data-layout-ready=false] .AdaptivePathLab-module__C2cy_q__canvasFrame{visibility:hidden}.AdaptivePathLab-module__C2cy_q__canvas{width:100%;height:100%;color:var(--lab-text);cursor:crosshair;-webkit-user-select:none;user-select:none}.AdaptivePathLab-module__C2cy_q__canvas:focus-visible{outline:2px solid var(--lab-accent);outline-offset:-4px}.AdaptivePathLab-module__C2cy_q__canvasBase{fill:var(--lab-canvas)}.AdaptivePathLab-module__C2cy_q__gridLine{fill:none;stroke:var(--lab-line);stroke-width:.72px;opacity:.74}.AdaptivePathLab-module__C2cy_q__hatchLine{stroke:var(--lab-muted);stroke-width:1px;opacity:.32}.AdaptivePathLab-module__C2cy_q__zone{stroke:var(--lab-line-strong);stroke-width:1.2px;vector-effect:non-scaling-stroke}.AdaptivePathLab-module__C2cy_q__dynamicZone{stroke:var(--lab-accent);stroke-width:1.7px;transition:cx .64s cubic-bezier(.22,1,.36,1),cy .64s cubic-bezier(.22,1,.36,1)}.AdaptivePathLab-module__C2cy_q__blockedCell{fill:var(--lab-deep);stroke:var(--lab-surface);stroke-width:1px;opacity:.16;vector-effect:non-scaling-stroke}.AdaptivePathLab-module__C2cy_q__dynamicBlockedCell{stroke:var(--lab-accent);stroke-width:1.4px;opacity:.72;transition:x .64s cubic-bezier(.22,1,.36,1),y .64s cubic-bezier(.22,1,.36,1)}.AdaptivePathLab-module__C2cy_q__frontier{fill:color-mix(in srgb, var(--lab-accent) 28%, var(--lab-line))}.AdaptivePathLab-module__C2cy_q__frontierNode{opacity:0;transform-box:fill-box;transform-origin:50%;animation:AdaptivePathLab-module__C2cy_q__frontierWave .3s cubic-bezier(.22, 1, .36, 1) var(--node-delay,0s) forwards;transform:scale(.4)}.AdaptivePathLab-module__C2cy_q__exploration{fill:var(--lab-muted)}.AdaptivePathLab-module__C2cy_q__exploredNode{opacity:0;transform-box:fill-box;transform-origin:50%;animation:AdaptivePathLab-module__C2cy_q__exploredFront .32s cubic-bezier(.22, 1, .36, 1) var(--node-delay,0s) forwards;transform:scale(.25)}.AdaptivePathLab-module__C2cy_q__nearRouteNode{fill:color-mix(in srgb, var(--lab-accent) 64%, var(--lab-muted));--node-opacity:.52!important}.AdaptivePathLab-module__C2cy_q__ghostRoute,.AdaptivePathLab-module__C2cy_q__rawRoute,.AdaptivePathLab-module__C2cy_q__finalRoute{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.AdaptivePathLab-module__C2cy_q__ghostRoute{stroke:color-mix(in srgb, var(--lab-accent) 42%, var(--lab-muted));stroke-width:2.1px;stroke-dasharray:5 6;pointer-events:none;animation:AdaptivePathLab-module__C2cy_q__ghostRouteFade var(--motion-replan,.9s) ease-out forwards}.AdaptivePathLab-module__C2cy_q__rawRoute{stroke:var(--lab-muted);stroke-width:1px;stroke-dasharray:2.2 5;opacity:0;animation:.42s .12s forwards AdaptivePathLab-module__C2cy_q__rawRouteIn}.AdaptivePathLab-module__C2cy_q__finalRoute{stroke:var(--lab-accent);stroke-width:2.7px;stroke-dasharray:1;stroke-dashoffset:1px;animation:AdaptivePathLab-module__C2cy_q__finalRouteDraw var(--motion-route,.65s) var(--ease-standard,cubic-bezier(.22, 1, .36, 1)) .1s forwards}.AdaptivePathLab-module__C2cy_q__startMarker{fill:var(--lab-deep);stroke:var(--lab-surface);stroke-width:2px;vector-effect:non-scaling-stroke}.AdaptivePathLab-module__C2cy_q__targetMarkerOuter{fill:var(--lab-surface);stroke:var(--lab-accent);stroke-width:2px;vector-effect:non-scaling-stroke}.AdaptivePathLab-module__C2cy_q__targetMarkerInner{fill:var(--lab-accent)}.AdaptivePathLab-module__C2cy_q__vehicle{pointer-events:none}.AdaptivePathLab-module__C2cy_q__vehicle path,.AdaptivePathLab-module__C2cy_q__vehicle circle{vector-effect:non-scaling-stroke}.AdaptivePathLab-module__C2cy_q__vehicleArms,.AdaptivePathLab-module__C2cy_q__vehicleTracks{fill:none;stroke:var(--lab-deep);stroke-width:1.6px;stroke-linecap:round}.AdaptivePathLab-module__C2cy_q__vehicleBody{fill:var(--lab-deep);stroke:var(--lab-surface);stroke-width:1px;stroke-linejoin:round}.AdaptivePathLab-module__C2cy_q__vehicleUgv circle{fill:var(--lab-accent)}.AdaptivePathLab-module__C2cy_q__droneArms{fill:none;stroke:var(--lab-accent);stroke-width:1.45px;stroke-linecap:round;stroke-linejoin:round}.AdaptivePathLab-module__C2cy_q__droneRotor{fill:var(--lab-accent-soft);stroke:var(--lab-accent);stroke-width:1.2px}.AdaptivePathLab-module__C2cy_q__droneRotorHub{fill:var(--lab-accent);stroke:var(--lab-surface);stroke-width:.65px}.AdaptivePathLab-module__C2cy_q__droneBody{fill:var(--lab-deep);stroke:var(--lab-surface);stroke-width:1px;stroke-linejoin:round}.AdaptivePathLab-module__C2cy_q__droneCanopy{fill:var(--lab-accent);stroke:var(--lab-surface);stroke-width:.75px;stroke-linejoin:round}.AdaptivePathLab-module__C2cy_q__droneHeadingLight{fill:var(--lab-surface);stroke:none}.AdaptivePathLab-module__C2cy_q__notice{z-index:3;border:1px solid var(--lab-line);background:color-mix(in srgb, var(--lab-surface) 94%, transparent);max-width:calc(100% - 1.3rem);color:var(--lab-soft);font-family:var(--font-mono,monospace);letter-spacing:.025em;border-radius:7px;align-items:center;gap:.42rem;margin:0;padding:.38rem .55rem;font-size:.7rem;font-weight:600;animation:.24s ease-out both AdaptivePathLab-module__C2cy_q__noticeIn;display:inline-flex;position:absolute;top:.65rem;right:.65rem}.AdaptivePathLab-module__C2cy_q__notice span{background:var(--lab-accent);border-radius:50%;width:.38rem;height:.38rem}.AdaptivePathLab-module__C2cy_q__initialHint{z-index:3;border:1px solid var(--lab-line);background:color-mix(in srgb, var(--lab-surface) 96%, transparent);max-width:calc(100% - 1.4rem);color:var(--lab-soft);text-align:center;border-radius:8px;align-items:center;gap:.42rem;margin:0;padding:.42rem .62rem;font-size:.72rem;line-height:1.35;animation:4.5s both AdaptivePathLab-module__C2cy_q__initialHintLifecycle;display:inline-flex;position:absolute;bottom:.7rem;left:50%;transform:translate(-50%)}.AdaptivePathLab-module__C2cy_q__initialHint span{border:1px solid var(--lab-accent);background:var(--lab-accent-soft);border-radius:50%;flex:none;width:.38rem;height:.38rem}.AdaptivePathLab-module__C2cy_q__obstacleHandle{z-index:2;width:44px;height:44px;color:var(--lab-accent);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:left .64s cubic-bezier(.22,1,.36,1),top .64s cubic-bezier(.22,1,.36,1);display:grid;position:absolute;transform:translate(-50%,-50%)}.AdaptivePathLab-module__C2cy_q__obstacleHandle:before{background:var(--lab-surface);width:.7rem;height:.7rem;box-shadow:0 0 0 3px color-mix(in srgb, var(--lab-surface) 82%, transparent);content:"";border:1.5px solid;border-radius:50%;transition:transform .16s,background-color .16s}.AdaptivePathLab-module__C2cy_q__obstacleHandle[data-shape=ugv]:before{border-radius:3px}.AdaptivePathLab-module__C2cy_q__obstacleHandle:hover:before,.AdaptivePathLab-module__C2cy_q__obstacleHandle:focus-visible:before{background:var(--lab-accent-soft);transform:scale(1.2)}.AdaptivePathLab-module__C2cy_q__obstacleHandle:focus-visible{outline:2px solid var(--lab-accent);outline-offset:-3px}.AdaptivePathLab-module__C2cy_q__obstacleHandleDragging{cursor:grabbing;transition:none}.AdaptivePathLab-module__C2cy_q__lab[data-dragging=true] .AdaptivePathLab-module__C2cy_q__dynamicZone,.AdaptivePathLab-module__C2cy_q__lab[data-dragging=true] .AdaptivePathLab-module__C2cy_q__dynamicBlockedCell{transition:none}.AdaptivePathLab-module__C2cy_q__lab[data-dragging=true] .AdaptivePathLab-module__C2cy_q__exploredNode,.AdaptivePathLab-module__C2cy_q__lab[data-dragging=true] .AdaptivePathLab-module__C2cy_q__frontierNode,.AdaptivePathLab-module__C2cy_q__lab[data-dragging=true] .AdaptivePathLab-module__C2cy_q__rawRoute,.AdaptivePathLab-module__C2cy_q__lab[data-dragging=true] .AdaptivePathLab-module__C2cy_q__finalRoute{opacity:1;animation:none;transform:none}.AdaptivePathLab-module__C2cy_q__lab[data-dragging=true] .AdaptivePathLab-module__C2cy_q__finalRoute{stroke-dashoffset:0}.AdaptivePathLab-module__C2cy_q__footer{padding-top:.3rem}.AdaptivePathLab-module__C2cy_q__bottomBar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem clamp(.75rem,1.7vw,1.25rem);min-height:44px;display:grid}.AdaptivePathLab-module__C2cy_q__status{min-width:0;color:var(--lab-soft);font-family:var(--font-mono,monospace);letter-spacing:.025em;overflow-wrap:anywhere;white-space:normal;align-items:center;gap:.48rem;font-size:.7rem;line-height:1.4;display:flex}.AdaptivePathLab-module__C2cy_q__statusSignal{background:var(--lab-accent);border-radius:50%;flex:none;width:.38rem;height:.38rem}.AdaptivePathLab-module__C2cy_q__resetButton{width:44px;height:44px;color:var(--lab-muted);cursor:pointer;background:0 0;border:0;border-radius:0;place-items:center;padding:0;transition:color .16s,transform .16s;display:grid}.AdaptivePathLab-module__C2cy_q__resetButton:hover{color:var(--lab-accent);transform:rotate(-18deg)}.AdaptivePathLab-module__C2cy_q__resetButton svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}.AdaptivePathLab-module__C2cy_q__legend{border-top:1px solid var(--lab-line);color:var(--lab-muted);font-family:var(--font-mono,monospace);letter-spacing:.02em;flex-wrap:wrap;justify-content:flex-start;gap:.25rem .65rem;margin:0;padding:.25rem 0 0;font-size:.7rem;list-style:none;display:flex}.AdaptivePathLab-module__C2cy_q__legend li{white-space:nowrap;align-items:center;gap:.3rem;display:inline-flex}.AdaptivePathLab-module__C2cy_q__legendStart,.AdaptivePathLab-module__C2cy_q__legendTarget,.AdaptivePathLab-module__C2cy_q__legendExplored,.AdaptivePathLab-module__C2cy_q__legendRoute,.AdaptivePathLab-module__C2cy_q__legendObstacle{flex:none;width:.46rem;height:.46rem;display:inline-block}.AdaptivePathLab-module__C2cy_q__legendStart{background:var(--lab-deep);transform:rotate(45deg)scale(.7)}.AdaptivePathLab-module__C2cy_q__legendTarget{border:1px solid var(--lab-accent);background:var(--lab-surface);border-radius:50%;margin-left:-.22rem}.AdaptivePathLab-module__C2cy_q__legendExplored{background:var(--lab-deep);opacity:.45;border-radius:50%;width:.24rem;height:.24rem}.AdaptivePathLab-module__C2cy_q__legendRoute{background:var(--lab-accent);width:.7rem;height:2px}.AdaptivePathLab-module__C2cy_q__legendObstacle{border:1px solid var(--lab-line-strong);background:var(--lab-subtle)}@keyframes AdaptivePathLab-module__C2cy_q__exploredFront{0%{opacity:0;transform:scale(.25)}to{opacity:var(--node-opacity,.28);transform:scale(1)}}@keyframes AdaptivePathLab-module__C2cy_q__frontierWave{0%{opacity:0;transform:scale(.4)}to{opacity:.34;transform:scale(1)}}@keyframes AdaptivePathLab-module__C2cy_q__rawRouteIn{0%{opacity:0}to{opacity:.42}}@keyframes AdaptivePathLab-module__C2cy_q__finalRouteDraw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes AdaptivePathLab-module__C2cy_q__ghostRouteFade{0%{opacity:.34}to{opacity:0}}@keyframes AdaptivePathLab-module__C2cy_q__noticeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes AdaptivePathLab-module__C2cy_q__initialHintLifecycle{0%{opacity:0;transform:translate(-50%,4px)}8%,84%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%)}}@media (max-width:42rem){.AdaptivePathLab-module__C2cy_q__lab{border-radius:3px;padding:.75rem}.AdaptivePathLab-module__C2cy_q__header{grid-template-columns:minmax(0,1fr) auto}.AdaptivePathLab-module__C2cy_q__canvasFrame{aspect-ratio:auto;height:clamp(17.5rem,90vw,20rem);min-height:17.5rem}.AdaptivePathLab-module__C2cy_q__modeButtons{width:8.4rem}.AdaptivePathLab-module__C2cy_q__legend{justify-content:flex-start}.AdaptivePathLab-module__C2cy_q__initialHint{display:none}}@media (max-width:29rem){.AdaptivePathLab-module__C2cy_q__header{grid-template-columns:1fr}.AdaptivePathLab-module__C2cy_q__modeButtons{width:100%}.AdaptivePathLab-module__C2cy_q__description,.AdaptivePathLab-module__C2cy_q__figureLabel:after,.AdaptivePathLab-module__C2cy_q__legend{display:none}}@media (prefers-reduced-motion:reduce){.AdaptivePathLab-module__C2cy_q__modeButton,.AdaptivePathLab-module__C2cy_q__dynamicZone,.AdaptivePathLab-module__C2cy_q__dynamicBlockedCell,.AdaptivePathLab-module__C2cy_q__obstacleHandle,.AdaptivePathLab-module__C2cy_q__obstacleHandle:before{transition:none}.AdaptivePathLab-module__C2cy_q__exploredNode,.AdaptivePathLab-module__C2cy_q__frontierNode,.AdaptivePathLab-module__C2cy_q__rawRoute,.AdaptivePathLab-module__C2cy_q__finalRoute,.AdaptivePathLab-module__C2cy_q__notice,.AdaptivePathLab-module__C2cy_q__initialHint{opacity:1;animation:none;transform:none}.AdaptivePathLab-module__C2cy_q__finalRoute{stroke-dashoffset:0}.AdaptivePathLab-module__C2cy_q__initialHint{transform:translate(-50%)}.AdaptivePathLab-module__C2cy_q__ghostRoute,.AdaptivePathLab-module__C2cy_q__exploration,.AdaptivePathLab-module__C2cy_q__frontier{display:none}.AdaptivePathLab-module__C2cy_q__resetButton:hover{transform:none}}
.Projects-module__I8N56G__section{background:var(--surface-subtle)}.Projects-module__I8N56G__researchList{border-top:1px solid var(--border-strong)}.Projects-module__I8N56G__researchEntry{border-bottom:1px solid var(--border-strong);grid-template-columns:minmax(11rem,.34fr) minmax(22rem,1fr) minmax(13rem,.44fr);align-items:start;gap:1.75rem clamp(2rem,4.5vw,4.5rem);padding-block:clamp(2rem,3.4vw,2.9rem);display:grid}.Projects-module__I8N56G__projectMeta{gap:.85rem;display:grid}.Projects-module__I8N56G__projectMeta>p{color:var(--foreground-tertiary);letter-spacing:.025em;text-transform:uppercase;font-size:.72rem;font-weight:620;line-height:1.5}.Projects-module__I8N56G__status{color:var(--foreground-secondary);justify-self:start;align-items:center;gap:.5rem;font-size:.72rem;display:inline-flex}.Projects-module__I8N56G__statusMark{border:1px solid;border-radius:50%;width:.42rem;height:.42rem}.Projects-module__I8N56G__status[data-state=active] .Projects-module__I8N56G__statusMark,.Projects-module__I8N56G__status[data-state=in-progress] .Projects-module__I8N56G__statusMark{border-color:var(--accent);background:var(--accent)}.Projects-module__I8N56G__status[data-state=shipped] .Projects-module__I8N56G__statusMark{border-color:var(--positive);background:var(--positive)}.Projects-module__I8N56G__projectContent h3{max-width:18ch;font-size:clamp(1.65rem,2.6vw,2.35rem)}.Projects-module__I8N56G__projectDescription{max-width:61ch;color:var(--foreground-secondary);margin-top:1rem;font-size:.96rem;line-height:1.74}.Projects-module__I8N56G__projectFooter{gap:1rem;display:grid}.Projects-module__I8N56G__tools{color:var(--foreground-tertiary);flex-wrap:wrap;gap:.38rem .7rem;font-size:.72rem;line-height:1.55;list-style:none;display:flex}.Projects-module__I8N56G__tools li:not(:last-child):after{color:var(--border-strong);content:"·";margin-left:.7rem}.Projects-module__I8N56G__links{flex-wrap:wrap;gap:.8rem 1rem;display:flex}.Projects-module__I8N56G__links a{min-height:2.75rem;color:var(--foreground);align-items:center;gap:.35rem;font-size:.76rem;font-weight:650;display:inline-flex}.Projects-module__I8N56G__links a span:last-child{color:var(--accent);transition:transform var(--motion-fast) var(--ease-standard)}.Projects-module__I8N56G__links a:hover span:first-child{text-underline-offset:.2em;text-decoration:underline}.Projects-module__I8N56G__links a:hover span:last-child{transform:translate(3px,-3px)}@media (max-width:1060px){.Projects-module__I8N56G__researchEntry{grid-template-columns:minmax(10rem,.32fr) minmax(0,1fr)}.Projects-module__I8N56G__projectFooter{grid-column:2}}@media (max-width:760px){.Projects-module__I8N56G__researchEntry{grid-template-columns:1fr;gap:1.25rem}.Projects-module__I8N56G__projectMeta{justify-content:space-between;align-items:center;gap:1rem;display:flex}.Projects-module__I8N56G__projectFooter{grid-column:1}}@media (prefers-reduced-motion:reduce){.Projects-module__I8N56G__links a span:last-child{transition:none}}
.Publications-module__zNtxZW__section{background:var(--background)}.Publications-module__zNtxZW__profileLink,.Publications-module__zNtxZW__archiveLink,.Publications-module__zNtxZW__sourceActions a,.Publications-module__zNtxZW__citationTools summary,.Publications-module__zNtxZW__citationActions a,.Publications-module__zNtxZW__citationActions button{text-underline-offset:.22em;transition:color var(--motion-fast) ease, text-decoration-color var(--motion-fast) ease;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.Publications-module__zNtxZW__profileLink{min-height:44px;color:var(--accent);font-family:var(--font-mono);letter-spacing:.025em;align-items:center;gap:.4rem;font-size:.7rem;font-weight:650;display:inline-flex}.Publications-module__zNtxZW__profileLink:hover,.Publications-module__zNtxZW__archiveLink:hover,.Publications-module__zNtxZW__sourceActions a:hover,.Publications-module__zNtxZW__citationTools summary:hover,.Publications-module__zNtxZW__citationActions a:hover,.Publications-module__zNtxZW__citationActions button:hover{color:var(--accent-hover);text-decoration-color:currentColor}.Publications-module__zNtxZW__groups{gap:clamp(2.75rem,5vw,4.75rem);display:grid}.Publications-module__zNtxZW__group{border-top:1px solid var(--border-strong);grid-template-columns:minmax(10.5rem,.28fr) minmax(0,1fr);gap:clamp(1.75rem,5vw,5rem);display:grid}.Publications-module__zNtxZW__groupHeader{padding-top:1.25rem}.Publications-module__zNtxZW__groupHeader h2,.Publications-module__zNtxZW__groupHeader h3{max-width:15ch;color:var(--foreground);letter-spacing:-.02em;text-wrap:balance;font-size:clamp(1.05rem,1.5vw,1.22rem);font-weight:650;line-height:1.35}.Publications-module__zNtxZW__list{margin:0;padding:0;list-style:none}.Publications-module__zNtxZW__compact .Publications-module__zNtxZW__list{border-top:1px solid var(--border-strong)}.Publications-module__zNtxZW__item{border-bottom:1px solid var(--border)}.Publications-module__zNtxZW__record{grid-template-columns:minmax(7.25rem,.2fr) minmax(0,1fr);gap:clamp(1.25rem,3vw,2.6rem);padding-block:clamp(1.45rem,2.5vw,2rem);display:grid}.Publications-module__zNtxZW__chronology{color:var(--foreground-tertiary);font-family:var(--font-mono);grid-template-columns:1.35rem minmax(0,1fr);align-content:start;gap:.65rem;font-size:.69rem;line-height:1.45;display:grid}.Publications-module__zNtxZW__index{color:var(--accent)}.Publications-module__zNtxZW__recordMeta{gap:.3rem;display:grid}.Publications-module__zNtxZW__year{color:var(--foreground-secondary);font-weight:700}.Publications-module__zNtxZW__kind{letter-spacing:.035em;text-transform:uppercase;max-width:15ch}.Publications-module__zNtxZW__body{min-width:0}.Publications-module__zNtxZW__title{max-width:62ch;color:var(--foreground);letter-spacing:-.025em;text-wrap:pretty;font-size:clamp(1.08rem,1.55vw,1.3rem);font-weight:650;line-height:1.34}.Publications-module__zNtxZW__authors{color:var(--foreground-secondary);margin-top:.55rem;font-size:.87rem;line-height:1.6}.Publications-module__zNtxZW__authors strong{color:var(--foreground);font-weight:650}.Publications-module__zNtxZW__sourceLine{max-width:78ch;color:var(--foreground-tertiary);flex-wrap:wrap;align-items:baseline;gap:.2rem .65rem;margin-top:.32rem;font-size:.79rem;line-height:1.55;display:flex}.Publications-module__zNtxZW__sourceLine>span{align-items:center;gap:.65rem;display:inline-flex}.Publications-module__zNtxZW__sourceLine>span:before{color:var(--border-strong);content:"·"}.Publications-module__zNtxZW__venue{font-style:normal}.Publications-module__zNtxZW__identifier{color:var(--foreground-tertiary);font-family:var(--font-mono);letter-spacing:.015em;overflow-wrap:anywhere;margin-top:.38rem;font-size:.68rem;line-height:1.55}.Publications-module__zNtxZW__summary{max-width:72ch;color:var(--foreground-secondary);margin-top:.72rem;font-size:.88rem;line-height:1.68}.Publications-module__zNtxZW__note,.Publications-module__zNtxZW__credit{max-width:72ch;color:var(--foreground-tertiary);margin-top:.42rem;font-size:.76rem;line-height:1.55}.Publications-module__zNtxZW__credit{color:var(--foreground-secondary);font-weight:600}.Publications-module__zNtxZW__actionsArea{justify-items:start;margin-top:.7rem;display:grid}.Publications-module__zNtxZW__sourceActions{flex-wrap:wrap;gap:0 1.1rem;display:flex}.Publications-module__zNtxZW__sourceActions a,.Publications-module__zNtxZW__citationTools summary,.Publications-module__zNtxZW__citationActions a,.Publications-module__zNtxZW__citationActions button{min-height:44px;color:var(--accent);font-family:var(--font-mono);align-items:center;gap:.35rem;font-size:.7rem;font-weight:650;display:inline-flex}.Publications-module__zNtxZW__citationTools{max-width:100%}.Publications-module__zNtxZW__citationTools summary{cursor:pointer;width:fit-content;list-style:none}.Publications-module__zNtxZW__citationTools summary::-webkit-details-marker{display:none}.Publications-module__zNtxZW__disclosureIcon{width:1rem;height:1rem;transition:transform var(--motion-fast) ease;place-items:center;display:inline-grid}.Publications-module__zNtxZW__citationTools[open] .Publications-module__zNtxZW__disclosureIcon{transform:rotate(45deg)}.Publications-module__zNtxZW__citationActions{border-left:1px solid var(--border-strong);flex-wrap:wrap;gap:0 1rem;margin-top:-.15rem;padding-left:.8rem;display:flex}.Publications-module__zNtxZW__citationActions button{cursor:pointer;background:0 0;border:0;border-radius:0;padding:0}.Publications-module__zNtxZW__archiveFooter{justify-content:flex-end;padding-top:1rem;display:flex}.Publications-module__zNtxZW__archiveLink{min-height:44px;color:var(--accent);align-items:center;gap:.55rem;font-size:.82rem;font-weight:650;display:inline-flex}.Publications-module__zNtxZW__compact .Publications-module__zNtxZW__record{padding-block:clamp(1.25rem,2vw,1.65rem)}.Publications-module__zNtxZW__compact .Publications-module__zNtxZW__summary,.Publications-module__zNtxZW__compact .Publications-module__zNtxZW__note,.Publications-module__zNtxZW__compact .Publications-module__zNtxZW__credit,.Publications-module__zNtxZW__compact .Publications-module__zNtxZW__citationTools{display:none}.Publications-module__zNtxZW__empty{border-block:1px solid var(--border);color:var(--foreground-secondary);padding-block:2rem}.Publications-module__zNtxZW__liveRegion{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.Publications-module__zNtxZW__profileLink:focus-visible,.Publications-module__zNtxZW__archiveLink:focus-visible,.Publications-module__zNtxZW__sourceActions a:focus-visible,.Publications-module__zNtxZW__citationTools summary:focus-visible,.Publications-module__zNtxZW__citationActions a:focus-visible,.Publications-module__zNtxZW__citationActions button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width:62rem){.Publications-module__zNtxZW__group{grid-template-columns:1fr;gap:0}.Publications-module__zNtxZW__groupHeader{padding-bottom:.65rem}.Publications-module__zNtxZW__groupHeader h2,.Publications-module__zNtxZW__groupHeader h3{max-width:none}}@media (max-width:42rem){.Publications-module__zNtxZW__record{grid-template-columns:1fr;gap:.68rem;padding-block:1.35rem}.Publications-module__zNtxZW__chronology{align-items:baseline;gap:.7rem;display:flex}.Publications-module__zNtxZW__recordMeta{align-items:baseline;gap:.6rem;display:flex}.Publications-module__zNtxZW__kind{gap:.6rem;max-width:none;display:inline-flex}.Publications-module__zNtxZW__kind:before{color:var(--border-strong);content:"·"}.Publications-module__zNtxZW__sourceLine{gap:.08rem;display:grid}.Publications-module__zNtxZW__sourceLine>span{gap:0}.Publications-module__zNtxZW__sourceLine>span:before{display:none}.Publications-module__zNtxZW__archiveFooter{justify-content:flex-start}}@media (max-width:29rem){.Publications-module__zNtxZW__groupHeader h2,.Publications-module__zNtxZW__groupHeader h3{font-size:1.05rem}.Publications-module__zNtxZW__title{font-size:1.04rem}.Publications-module__zNtxZW__sourceActions,.Publications-module__zNtxZW__citationActions{gap:0 .8rem}}@media (prefers-reduced-motion:reduce){.Publications-module__zNtxZW__profileLink,.Publications-module__zNtxZW__archiveLink,.Publications-module__zNtxZW__sourceActions a,.Publications-module__zNtxZW__citationTools summary,.Publications-module__zNtxZW__citationActions a,.Publications-module__zNtxZW__citationActions button,.Publications-module__zNtxZW__disclosureIcon{transition:none}}
