.hp{z-index:1;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:center;gap:clamp(32px,5vw,76px);min-height:clamp(560px,82vh,780px);padding:clamp(28px,6vh,72px) 0 clamp(24px,5vh,56px)}.hp,.hp-copy{position:relative}.hp-copy{z-index:3;min-width:0;animation:hp-lift .7s var(--ease-out) both}.hp-title{margin:0;max-width:13ch;font-family:var(--font-display,var(--font-serif-display,serif));font-weight:700;font-size:clamp(2.4rem,4.8vw,4rem);line-height:1.04;letter-spacing:-.02em;text-wrap:balance;color:var(--ink)}.hp-title .accent{color:var(--accent)}.hp-lede{max-width:44ch;margin:18px 0 0;font-size:clamp(15.5px,1.35vw,17px);line-height:1.6;color:var(--ink-2);text-wrap:pretty}.hp-searchbox{position:relative;max-width:520px;margin-top:28px}.hp-search{display:flex;align-items:center;gap:10px;padding:7px 7px 7px 16px;background:var(--card);border:1.5px solid var(--hair-2);border-radius:14px;box-shadow:var(--shadow);transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.hp-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--focus-ring)}.hp-slash{flex-shrink:0;font-family:var(--font-mono,monospace);font-size:18px;color:var(--accent)}.hp-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:var(--font-inter,sans-serif);font-size:15.5px;color:var(--ink)}.hp-search input::-moz-placeholder{color:var(--muted)}.hp-search input::placeholder{color:var(--muted)}.hp-search button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border:0;border-radius:10px;background:var(--accent);color:var(--on-accent);cursor:pointer;transition:background var(--dur-fast),transform var(--dur-fast) var(--ease-out)}.hp-search button:hover{background:var(--accent-dk,var(--accent))}.hp-search button:active{transform:scale(.94)}.hp-drop{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;margin:0;padding:6px;list-style:none;background:var(--card);border:1px solid var(--hair-2);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.hp-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.hp-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border:1.5px solid var(--hair-2);border-radius:12px;font:500 14.5px/1 var(--font-inter,sans-serif);color:var(--ink);text-decoration:none;transition:border-color var(--dur-fast),background var(--dur-fast),transform var(--dur-fast) var(--ease-out)}@media (hover:hover) and (pointer:fine){.hp-btn:hover{border-color:var(--ink-soft);transform:translateY(-1px)}}.hp-btn:active{transform:scale(.98)}.hp-btn--primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.hp-btn--primary:hover{border-color:var(--accent-dk,var(--accent));background:var(--accent-dk,var(--accent));transform:none}.hp-meta{margin:20px 0 0;font-size:12.5px;color:var(--muted)}@media (pointer:coarse){.hp-meta-kbd{display:none}}.hp-meta kbd{padding:2px 7px;border:1px solid var(--hair-2);border-radius:6px;font:11.5px var(--font-mono,monospace);color:var(--ink-2)}.hp-btn,.hp-chip,.hp-open,.hp-pause,.hp-search button,.hp-st-link{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.hp-st-link{overflow-wrap:anywhere}.hp-cap-mark,.hp-meta{font-variant-numeric:tabular-nums}.hp-btn:focus-visible,.hp-chip:focus-visible,.hp-name a:focus-visible,.hp-open:focus-visible,.hp-pause:focus-visible,.hp-search button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.hp-plate{isolation:isolate;margin:0;padding:clamp(18px,2.4vw,28px);overflow:clip;background:var(--card);border:1px solid var(--hair-2);border-radius:var(--radius-card);box-shadow:var(--shadow);animation:hp-lift .8s .12s var(--ease-out) both}.hp-plate,.hp-plate>*{position:relative;z-index:1}.hp-specimen{position:absolute!important;top:-150px;right:-170px;z-index:0!important;width:560px;height:560px;opacity:.2;pointer-events:none}.hp-specimen-spin{will-change:transform;animation:hp-fade .7s var(--ease-out) both,hp-spin 180s linear infinite}.hp-specimen svg,.hp-specimen-spin{width:100%;height:100%}.hp-cap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px;font:12px var(--font-mono,monospace);color:var(--muted)}.hp-cap-mark{display:inline-flex;align-items:center;gap:10px}.hp-pause{display:inline-grid;place-items:center;width:28px;height:28px;margin:-4px -6px -4px 0;border:0;border-radius:50%;background:transparent;color:var(--ink-2);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.hp-pause:active{transform:scale(.92)}@media (hover:hover) and (pointer:fine){.hp-pause:hover{background:color-mix(in srgb,var(--c) 14%,transparent)}}.hp-icd{padding:2px 7px;border:1px solid var(--hair-2);border-radius:6px;color:var(--ink-2)}.hp-chips{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 20px}.hp-chip{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px 0 10px;border:1px solid var(--hair-2);border-radius:var(--radius-pill);background:transparent;font:500 12.5px/1 var(--font-inter,sans-serif);color:var(--ink-2);cursor:pointer;transition:background var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.hp-chip svg{color:var(--c)}@media (hover:hover) and (pointer:fine){.hp-chip:hover{border-color:color-mix(in srgb,var(--c) 55%,var(--hair-2))}}.hp-chip:active{transform:scale(.97)}.hp-chip[aria-pressed=true]{border-color:color-mix(in srgb,var(--c) 55%,transparent);background:color-mix(in srgb,var(--c) 14%,var(--card));color:color-mix(in srgb,var(--c) 68%,var(--ink))}.hp-body{animation:hp-swap .24s var(--ease-out) both}.hp-name{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;font-family:var(--font-display,var(--font-serif-display,serif));font-weight:700;font-size:clamp(1.3rem,2.1vw,1.6rem);line-height:1.2;text-wrap:balance}.hp-name a{color:var(--ink);text-decoration:none;background:linear-gradient(var(--c),var(--c)) 0 100% /0 2px no-repeat;transition:background-size var(--dur-slow) var(--ease-out)}.hp-name a:hover{background-size:100% 2px}.hp-verified{padding:2px 8px;border:1px solid color-mix(in srgb,var(--c) 40%,transparent);border-radius:var(--radius-pill);font:500 11.5px/1.4 var(--font-mono,monospace);color:color-mix(in srgb,var(--c) 68%,var(--ink))}.hp-route{position:relative;margin-top:8px}.hp-svg{position:absolute;top:0;left:0;overflow:visible}.hp-line,.hp-rail{fill:none;stroke-linecap:round}.hp-rail{stroke:var(--hair-2);stroke-width:2;stroke-dasharray:2 7}.hp-line{stroke:var(--c);stroke-width:2.5;stroke-dasharray:1;stroke-dashoffset:0;animation:hp-draw 1.05s .1s var(--ease-in-out) backwards}.hp-signal{position:absolute;top:0;left:0;z-index:2;width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 22%,transparent),0 0 16px color-mix(in srgb,var(--c) 50%,transparent);offset-anchor:50% 50%;offset-rotate:0deg;transition:offset-distance .95s var(--ease-in-out);animation:hp-fade .3s .9s var(--ease-out) backwards;pointer-events:none}.hp-stations{position:absolute;inset:0;margin:0;padding:0;list-style:none}.hp-st{left:0;right:0;height:0}.hp-node,.hp-st{position:absolute}.hp-node{top:-8px;z-index:1;width:16px;height:16px;margin-left:-8px;border:2px solid var(--c);border-radius:50%;background:var(--card);transition:transform var(--dur-slow) var(--ease-spring),background var(--dur-slow) var(--ease-out),box-shadow var(--dur-slow) var(--ease-out);animation:hp-pop .34s calc(.12s + var(--i) * .19s) var(--ease-out) backwards}.hp-st[data-past] .hp-node{background:color-mix(in srgb,var(--c) 32%,var(--card))}.hp-st[data-hot] .hp-node{background:var(--c);box-shadow:0 0 0 5px color-mix(in srgb,var(--c) 20%,transparent);transform:scale(1.2)}.hp-st-link{position:absolute;top:-12px;right:0;display:block;padding-right:2px;color:var(--ink-2);text-decoration:none;animation:hp-rise .36s calc(.08s + var(--i) * .07s) var(--ease-out) backwards}.hp-st-title{display:inline;font-family:var(--font-display,var(--font-serif-display,serif));font-size:1.04rem;line-height:24px;text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:1.5px;text-underline-offset:4px;transition:color var(--dur-base) var(--ease-out),text-decoration-color var(--dur-base) var(--ease-out)}.hp-st[data-hot] .hp-st-title{color:var(--ink);text-decoration-color:var(--c)}.hp-st-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.hp-st-ex{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--dur-base) var(--ease-out),opacity var(--dur-quick) var(--ease-out)}.hp-st-ex>span{display:-webkit-box;min-height:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:13px;line-height:1.45;color:var(--muted)}.hp-st[data-hot] .hp-st-ex{grid-template-rows:1fr;margin-top:2px;opacity:1}.hp-open{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font:500 14px/1.2 var(--font-inter,sans-serif);color:var(--clinical);text-decoration:none}.hp-open svg{transition:transform var(--dur-base) var(--ease-out)}.hp-open:hover{text-decoration:underline;text-underline-offset:4px}.hp-open:hover svg{transform:translateX(3px)}@supports not (offset-path:path("M0 0")){.hp-signal{display:none}}@keyframes hp-lift{0%{transform:translateY(14px)}}@keyframes hp-rise{0%{opacity:0;transform:translateY(14px)}}@keyframes hp-fade{0%{opacity:0}}@keyframes hp-pop{0%{opacity:0;transform:scale(.8)}}@keyframes hp-swap{0%{opacity:0;filter:blur(3px)}}@keyframes hp-draw{0%{stroke-dashoffset:1}}@keyframes hp-spin{to{transform:rotate(1turn)}}@media (max-width:900px){.hp{grid-template-columns:minmax(0,1fr);min-height:0;gap:36px;padding-top:clamp(24px,6vw,44px)}.hp-title{max-width:16ch}.hp-specimen{top:-200px;right:-240px}}@media (max-width:480px){.hp-btn{flex:1 1 100%;justify-content:center}.hp-chip{padding:0 10px 0 8px}}:root[data-theme=dark] .hp-specimen{opacity:.28}@media (prefers-reduced-motion:reduce){.hp-copy,.hp-plate{animation:none}.hp-body{animation:hp-fade .2s ease both}.hp-line,.hp-node,.hp-signal,.hp-specimen-spin,.hp-st-link{animation:none}.hp-btn,.hp-chip,.hp-name a,.hp-node,.hp-signal,.hp-st-ex{transition-property:opacity,color,background-color,border-color}.hp-btn:active,.hp-chip:active,.hp-pause:active,.hp-search button:active{transform:none}}