:root{color-scheme:light;--plane: #f9f9f7;--surface: #fcfcfb;--surface-2: #f2f1ed;--ink: #0b0b0b;--ink-2: #52514e;--muted: #898781;--hairline: #e1e0d9;--ring: rgba(11, 11, 11, .1);--accent: #2a78d6;--warn-ink: #8a5300;--warn-bg: #fff3dc;--b-germanic: #2a78d6;--b-romance: #eb6834;--b-greek: #1baf7a;--b-other: #898781;--b-pie: #52514e;--shadow: 0 6px 24px rgba(11, 11, 11, .12), 0 1px 3px rgba(11, 11, 11, .08);--font: system-ui, -apple-system, "Segoe UI", sans-serif}@media(prefers-color-scheme:dark){:root:where(:not([data-theme=light])){color-scheme:dark;--plane: #0d0d0d;--surface: #1a1a19;--surface-2: #232321;--ink: #f0efec;--ink-2: #c3c2b7;--muted: #898781;--hairline: #2c2c2a;--ring: rgba(255, 255, 255, .1);--accent: #3987e5;--warn-ink: #f2c46b;--warn-bg: #3a2c10;--b-germanic: #3987e5;--b-romance: #d95926;--b-greek: #199e70;--b-other: #898781;--b-pie: #c3c2b7;--shadow: 0 6px 24px rgba(0, 0, 0, .5), 0 1px 3px rgba(0, 0, 0, .4)}}:root[data-theme=dark]{color-scheme:dark;--plane: #0d0d0d;--surface: #1a1a19;--surface-2: #232321;--ink: #f0efec;--ink-2: #c3c2b7;--muted: #898781;--hairline: #2c2c2a;--ring: rgba(255, 255, 255, .1);--accent: #3987e5;--warn-ink: #f2c46b;--warn-bg: #3a2c10;--b-germanic: #3987e5;--b-romance: #d95926;--b-greek: #199e70;--b-other: #898781;--b-pie: #c3c2b7;--shadow: 0 6px 24px rgba(0, 0, 0, .5), 0 1px 3px rgba(0, 0, 0, .4)}.b-germanic{--bc: var(--b-germanic)}.b-romance{--bc: var(--b-romance)}.b-greek{--bc: var(--b-greek)}.b-other{--bc: var(--b-other)}.b-pie,.b-unknown{--bc: var(--b-pie)}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--plane);color:var(--ink);font:14px/1.45 var(--font);display:flex;flex-direction:column;overflow:hidden;-webkit-text-size-adjust:100%}button{font:inherit;color:inherit}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.topbar{display:flex;align-items:center;gap:12px;padding:10px 16px;padding-top:max(10px,env(safe-area-inset-top));background:var(--surface);border-bottom:1px solid var(--hairline);z-index:20}.brand{display:flex;align-items:center;gap:8px;color:var(--ink);text-decoration:none;font-weight:650;letter-spacing:-.01em}.brand-dot{fill:var(--muted)}.brand .b-germanic{stroke:var(--b-germanic)}.brand .b-romance{stroke:var(--b-romance)}.brand .b-greek{stroke:var(--b-greek)}.search{position:relative;flex:1;max-width:520px;margin-left:auto}.search-icon{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.search input{width:100%;height:38px;padding:0 12px 0 34px;border-radius:10px;border:1px solid var(--hairline);background:var(--surface-2);color:var(--ink);font:inherit;font-size:16px}.search input:focus{outline:none;border-color:var(--accent);background:var(--surface)}.search ul{position:absolute;top:calc(100% + 6px);left:0;right:0;margin:0;padding:4px;list-style:none;background:var(--surface);border:1px solid var(--hairline);border-radius:12px;box-shadow:var(--shadow);z-index:30}.search li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:8px;cursor:pointer}.search li[aria-selected=true],.search li:hover{background:var(--surface-2)}.sugg-word{font-weight:600}.sugg-roots{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sugg-roots.none{font-style:italic}.icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;border:1px solid var(--hairline);background:var(--surface);cursor:pointer;font-size:18px;line-height:1}.icon-btn:hover{background:var(--surface-2)}#theme-toggle .moon{display:none}:root[data-theme=dark] #theme-toggle .moon{display:inline}:root[data-theme=dark] #theme-toggle .sun{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) #theme-toggle .moon{display:inline}:root:not([data-theme=light]) #theme-toggle .sun{display:none}}.layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 380px}.stage{position:relative;min-width:0;min-height:0;background:var(--surface);overflow:hidden}#tree{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:grab;user-select:none}#tree:active{cursor:grabbing}.crumbs{position:absolute;top:10px;left:12px;right:12px;display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none;z-index:5;pointer-events:none}.crumbs>*{pointer-events:auto}.crumbs::-webkit-scrollbar{display:none}.crumb{flex:none;border:1px solid var(--hairline);background:var(--surface);border-radius:999px;padding:3px 10px;cursor:pointer;font-weight:600;white-space:nowrap}.crumb:hover{background:var(--surface-2)}.crumb.current{cursor:default;border-color:var(--ink-2)}.crumb-lang{color:var(--muted);font-weight:400;font-size:12px}.crumbs .sep{color:var(--muted);flex:none}.controls{position:absolute;top:46px;left:12px;right:12px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;z-index:5;pointer-events:none}.controls>*{pointer-events:auto}.legend{display:flex;flex-wrap:wrap;gap:6px}.legend-item{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border:1px solid var(--hairline);border-radius:999px;background:var(--surface);cursor:pointer;font-size:13px;color:var(--ink)}.legend-item .key{width:14px;height:2px;border-radius:2px;background:var(--bc)}.legend-item .count{color:var(--muted);font-variant-numeric:tabular-nums}.legend-item[aria-pressed=true]{border-color:var(--bc);box-shadow:inset 0 0 0 1px var(--bc)}.toggle{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-2);background:var(--surface);padding:2px 6px;border-radius:6px;cursor:pointer}.toggle input{accent-color:var(--accent);margin:0}.zoom-btns{position:absolute;right:12px;bottom:12px;display:flex;flex-direction:column;gap:6px;z-index:5}.status{position:absolute;left:50%;bottom:16px;transform:translate(-50%);background:var(--surface);border:1px solid var(--hairline);border-radius:999px;padding:6px 14px;box-shadow:var(--shadow);color:var(--ink-2);font-size:13px;z-index:6;max-width:calc(100% - 120px);text-align:center}.status:empty,.status[hidden]{display:none}.status.error{color:var(--warn-ink);background:var(--warn-bg)}.tooltip{position:absolute;z-index:10;max-width:280px;padding:8px 10px;background:var(--surface);border:1px solid var(--hairline);border-radius:10px;box-shadow:var(--shadow);pointer-events:none;font-size:13px}.tooltip strong{font-size:14px;margin-right:6px}.tip-lang{color:var(--muted)}.tip-edge{color:var(--ink-2);margin-top:2px}.tip-gloss{margin-top:4px}.tip-hint{color:var(--muted);margin-top:4px;font-size:12px}.rings circle{fill:none;stroke:var(--hairline);stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:2 4}.link{fill:none;stroke:var(--bc);stroke-width:1.3;vector-effect:non-scaling-stroke;opacity:.6;transition:opacity .2s}.link.b-pie{opacity:.45}.link.b-unknown{opacity:.18}.node.word.b-unknown .dot{opacity:.6}.link.uncertain{stroke-dasharray:5 4}.node{cursor:pointer;transition:opacity .2s}.node .s{transform:scale(var(--inv, 1))}.node .hit{fill:transparent}.node .dot{fill:var(--surface);stroke:var(--bc);stroke-width:1.6}.node.word .dot{fill:var(--bc);stroke:var(--surface);stroke-width:1}.node.center .dot{fill:var(--ink);stroke:var(--surface);stroke-width:2}.node.has-deriv .dot{stroke:var(--bc);stroke-width:2.4}.node .label{display:none;font-size:11px;fill:var(--ink-2);paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round;pointer-events:none}.node.lbl .label{display:inline;pointer-events:auto}.node.word .label{fill:var(--ink)}.node.center .label{font-size:18px;font-weight:650;fill:var(--ink);stroke-width:5px}.node:hover .label{display:inline;font-weight:600}.node:hover .dot{stroke-width:2.6}#tree.has-focus .link{opacity:.1}#tree.has-focus .link.on{opacity:1;stroke-width:2.4}#tree.has-focus .node{opacity:.3}#tree.has-focus .node.on{opacity:1}#tree .node.target .label{display:inline;font-weight:650;font-size:12.5px}#tree .node.target .dot{r:5px}#tree[data-branch=germanic] .link:not(.b-germanic):not(.b-pie),#tree[data-branch=romance] .link:not(.b-romance):not(.b-pie),#tree[data-branch=greek] .link:not(.b-greek):not(.b-pie),#tree[data-branch=other] .link:not(.b-other):not(.b-pie),#tree[data-branch=unknown] .link:not(.b-unknown):not(.b-pie){opacity:.06}#tree[data-branch=germanic] .node:not(.b-germanic):not(.b-pie),#tree[data-branch=romance] .node:not(.b-romance):not(.b-pie),#tree[data-branch=greek] .node:not(.b-greek):not(.b-pie),#tree[data-branch=other] .node:not(.b-other):not(.b-pie),#tree[data-branch=unknown] .node:not(.b-unknown):not(.b-pie){opacity:.15}.panel{position:relative;background:var(--surface);border-left:1px solid var(--hairline);min-height:0;display:flex;flex-direction:column}.sheet-handle{display:none}.panel-body{overflow-y:auto;padding:18px 20px 28px;flex:1;overscroll-behavior:contain}.phead{margin-bottom:14px}.eyebrow{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.pterm{margin:2px 0 4px;font-size:26px;line-height:1.15;letter-spacing:-.01em;overflow-wrap:anywhere}.gloss{margin:0 0 8px;color:var(--ink-2)}.ext{font-size:13px;text-decoration:none}.ext:hover{text-decoration:underline}.ext.icon{color:var(--muted);margin-left:4px}.psec{border-top:1px solid var(--hairline);padding:14px 0 6px}.psec h3{margin:0 0 8px;font-size:13px;font-weight:650;color:var(--ink-2)}.muted{color:var(--muted)}.small{font-size:12.5px}.note{font-size:12.5px;color:var(--ink-2);background:var(--surface-2);border-radius:8px;padding:8px 10px}.source-note{margin-top:22px;font-size:11.5px;color:var(--muted)}.source-note .plain-link{color:inherit;text-decoration:underline;text-decoration-color:var(--hairline)}.bbar{display:flex;height:8px;gap:2px;margin:4px 0 8px}.bbar .seg{background:var(--bc);border-radius:4px;min-width:4px}.blegend{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--ink-2)}.blegend strong{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.bdot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--bc);margin-right:6px;vertical-align:.05em;flex:none}.arrival{background:var(--surface-2);border-radius:10px;padding:10px 12px;margin-bottom:4px}.arrival em{font-style:normal;font-weight:600}.unrooted-why{margin:8px 0 0;color:var(--ink-2)}.step-row.solo{margin-left:0;display:flex;gap:8px;align-items:baseline}.arrival .small{margin-top:4px}.type-badge{display:inline-block;font-size:11.5px;font-weight:600;padding:1px 7px;border-radius:999px;border:1px solid var(--hairline);background:var(--surface);color:var(--ink-2)}.type-badge.t-inherited{border-color:var(--b-germanic)}.type-badge.t-borrowed{border-color:var(--b-romance)}.chain{list-style:none;margin:0;padding:0 0 0 4px}.chain .step{position:relative;padding-left:16px;border-left:2px solid var(--bc);margin-left:3px}.chain .step.uncertain{border-left-style:dashed}.chain .step:first-child{border-left-color:transparent}.chain .step-row{display:flex;align-items:baseline;gap:6px;padding:3px 0 6px;margin-left:-23px;flex-wrap:wrap}.chain .step-row .bdot{width:10px;height:10px;margin:0 6px 0 0;border:2px solid var(--surface);box-sizing:content-box}.step-lang{color:var(--muted);font-size:12.5px}.edge-label{padding-top:2px}.edge-notes{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 2px;align-items:center}.flag{display:inline-block;font-size:11px;padding:0 6px;border-radius:4px;background:var(--surface-2);color:var(--ink-2);margin-left:4px}.edge-notes .flag{margin-left:0}.flag.warn{background:var(--warn-bg);color:var(--warn-ink)}.flag.block{display:block;margin:6px 0 0;padding:3px 8px}.evidence{font-size:12px;color:var(--ink-2);width:100%}.evidence summary{cursor:pointer;color:var(--muted);display:inline}.evidence q{display:block;margin:4px 0;padding-left:8px;border-left:2px solid var(--hairline);font-style:italic}.linklike{background:none;border:0;padding:0;color:var(--ink);cursor:pointer;text-align:left}.linklike:hover{color:var(--accent);text-decoration:underline}.linklike.strong{font-weight:600}.plain{list-style:none;margin:0;padding:0;display:grid;gap:4px}.cog-rows{display:grid;gap:8px;margin-bottom:10px}.cog-branch{display:flex;align-items:center;font-size:12.5px;color:var(--ink-2);margin-bottom:4px}.chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chip{display:inline-flex;align-items:center;border:1px solid var(--hairline);background:var(--surface);border-radius:999px;padding:3px 10px 3px 8px;cursor:pointer;font-size:13px;color:var(--ink)}.chip:hover{border-color:var(--bc)}.chip .bdot{margin-right:6px}.btn{border:1px solid var(--hairline);background:var(--surface-2);border-radius:8px;padding:6px 12px;cursor:pointer;font-weight:600}.btn.small{font-size:12.5px;padding:4px 10px}.btn:hover{border-color:var(--ink-2)}.btn[aria-pressed=true]{background:var(--ink);color:var(--surface)}.about{width:min(680px,calc(100vw - 32px));max-height:min(86vh,900px);padding:0;border:1px solid var(--hairline);border-radius:16px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow);overflow:hidden}.about[open]{display:flex;flex-direction:column}.about::backdrop{background:#0b0b0b73}.about-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 12px 22px;border-bottom:1px solid var(--hairline)}.about-head h2{margin:0;font-size:18px;letter-spacing:-.01em}.about-body{overflow-y:auto;padding:6px 22px 24px;overscroll-behavior:contain}.about-lede{color:var(--ink-2);margin:12px 0 4px}.about h3{margin:22px 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.about details{border-bottom:1px solid var(--hairline)}.about summary{cursor:pointer;padding:10px 24px 10px 0;font-weight:600;list-style:none;position:relative}.about summary::-webkit-details-marker{display:none}.about summary:after{content:"+";position:absolute;right:4px;top:8px;color:var(--muted);font-weight:400;font-size:18px}.about details[open] summary:after{content:"−"}.about details>:not(summary){margin:0 0 12px;color:var(--ink-2)}.about details ul{padding-left:20px}.about details li{margin:3px 0}.about-keys{list-style:none;padding-left:0!important}.about-keys .key{display:inline-block;width:16px;height:3px;border-radius:2px;background:var(--bc);vertical-align:middle;margin-right:6px}.about-foot{padding:12px 22px;padding-bottom:max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--hairline);font-size:13px;color:var(--ink-2)}.about kbd{font:12px var(--font);padding:1px 6px;border:1px solid var(--hairline);border-bottom-width:2px;border-radius:4px;background:var(--surface-2)}@media(max-width:760px){.topbar{padding-left:12px;padding-right:12px;gap:8px}.brand span{display:none}.layout{grid-template-columns:1fr}.controls{top:44px}.toggle span{font-size:12px}.zoom-btns,.status{bottom:calc(var(--sheet-peek) + 12px)}.panel{--sheet-peek: 168px;position:fixed;left:0;right:0;bottom:0;height:var(--sheet-peek);border-left:0;border-top:1px solid var(--hairline);border-radius:16px 16px 0 0;box-shadow:var(--shadow);z-index:15;transition:height .3s ease;padding-bottom:env(safe-area-inset-bottom)}.panel.open{height:min(58vh,560px)}.sheet-handle{display:block;flex:none;height:22px;border:0;background:none;cursor:pointer;position:relative}.sheet-handle:after{content:"";position:absolute;left:50%;top:8px;width:38px;height:4px;border-radius:2px;background:var(--hairline);transform:translate(-50%)}.panel-body{padding:0 16px 20px}.pterm{font-size:22px}.about{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;border:0;margin:0}.about-body{padding-bottom:max(24px,env(safe-area-inset-bottom))}}body:has(.panel){--sheet-peek: 168px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
