:root{--ground: #17110c;--ground-alt: #211812;--ink: #efe3d2;--ink-soft: #a9907a;--gold: #d98d4a;--accent: #e8623a;--glow: #7a3a1e;--tracking: .22em;--tracking-anim: .22em;--stroke: 1.5;--font-display: Georgia, serif;--font-body: Georgia, "Times New Roman", serif;--case: uppercase;--morph: .24s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--ground);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.5;z-index:0;transition:background-image .6s linear,opacity .6s linear}:root[data-texture=marble] body:before{background-image:radial-gradient(120% 80% at 20% 0%,color-mix(in srgb,var(--glow) 55%,transparent),transparent 60%),repeating-linear-gradient(112deg,transparent 0 38px,color-mix(in srgb,var(--ink) 4%,transparent) 38px 39px)}:root[data-texture=bronze] body:before{background-image:radial-gradient(100% 90% at 80% 10%,color-mix(in srgb,var(--glow) 60%,transparent),transparent 62%),repeating-linear-gradient(0deg,transparent 0 5px,color-mix(in srgb,var(--gold) 5%,transparent) 5px 6px)}:root[data-texture=pigment] body:before{background-image:radial-gradient(90% 70% at 50% 0%,color-mix(in srgb,var(--glow) 70%,transparent),transparent 65%),radial-gradient(60% 60% at 15% 90%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 70%)}:root[data-texture=papyrus] body:before{background-image:radial-gradient(110% 80% at 50% 0%,color-mix(in srgb,var(--glow) 62%,transparent),transparent 62%),repeating-linear-gradient(0deg,transparent 0 26px,color-mix(in srgb,var(--gold) 5%,transparent) 26px 27px),repeating-linear-gradient(90deg,transparent 0 9px,color-mix(in srgb,var(--ink) 3%,transparent) 9px 10px)}:root[data-texture=timber] body:before{background-image:radial-gradient(120% 90% at 50% 110%,color-mix(in srgb,var(--glow) 65%,transparent),transparent 60%),repeating-linear-gradient(94deg,transparent 0 14px,color-mix(in srgb,var(--ink) 3%,transparent) 14px 16px)}.app{position:relative;z-index:1;min-height:100%;display:grid;grid-template-rows:auto 1fr}.topbar{display:flex;flex-wrap:wrap;gap:24px 40px;align-items:flex-end;justify-content:space-between;min-height:108px;padding:26px 34px 18px;border-bottom:1px solid color-mix(in srgb,var(--gold) 22%,transparent)}.brand{flex:1 1 420px;max-width:560px}.brand h1{line-height:1.25;margin:0;font-family:var(--font-display);font-size:1.45rem;font-weight:500;letter-spacing:var(--tracking);text-transform:var(--case);white-space:nowrap;color:var(--ink)}.brand p{margin:8px 0 0;max-width:46ch;font-size:.82rem;line-height:1.5;color:var(--ink-soft)}.tradition-bar{display:flex;gap:6px}.tradition-btn{display:flex;flex-direction:column;align-items:center;gap:4px;width:86px;padding:8px 6px 10px;background:transparent;border:1px solid transparent;border-radius:2px;color:var(--ink-soft);cursor:pointer;transition:color var(--morph),border-color var(--morph),background var(--morph)}.tradition-btn:hover{color:var(--btn-ink);border-color:color-mix(in srgb,var(--btn-gold) 40%,transparent)}.tradition-btn.is-active{color:var(--btn-ink);border-color:var(--btn-gold);background:color-mix(in srgb,var(--btn-gold) 10%,transparent)}.tradition-mark{width:34px;height:34px;opacity:.62;transition:opacity var(--morph)}.tradition-btn.is-active .tradition-mark,.tradition-btn:hover .tradition-mark{opacity:1}.tradition-btn-name{line-height:1.3;font-family:var(--font-display);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.tradition-btn.is-outsider .tradition-btn-name:after{content:"◦";margin-left:4px;opacity:.75}.view-bar{display:flex;gap:2px}.view-btn{line-height:1.3;width:96px;padding:9px 6px;background:transparent;border:1px solid color-mix(in srgb,var(--gold) 25%,transparent);color:var(--ink-soft);font-family:var(--font-display);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:all var(--morph)}.view-btn.is-active{color:var(--ground);background:var(--gold);border-color:var(--gold)}.stage{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:0;min-height:0}.pane{min-width:0;padding:8px 18px 24px}.app[data-view=wheel] .pane-braid,.app[data-view=braid] .pane-wheel{display:none}.app[data-view=braid] .stage{grid-template-columns:minmax(0,1fr)}.app[data-view=braid] .sidebar{display:none}.sidebar{border-left:1px solid color-mix(in srgb,var(--gold) 18%,transparent);background:color-mix(in srgb,var(--ground-alt) 70%,transparent);padding:22px 24px 32px;overflow-y:auto;max-height:calc(100vh - 108px)}.wheel{display:block;width:100%;max-height:calc(100vh - 132px);margin:0 auto;overflow:visible}.field-ring{stroke:color-mix(in srgb,var(--gold) 14%,transparent);stroke-width:1}.slot{cursor:pointer}.slot-hit{pointer-events:all}.slot-role{font-family:var(--font-display);font-size:12px;letter-spacing:.1em;text-transform:uppercase;fill:var(--ink-soft);transition:fill var(--morph)}.slot-name{font-family:var(--font-display);font-size:16px;fill:var(--ink);transition:fill var(--morph)}.slot.is-warm .slot-role,.slot.is-active .slot-role{fill:var(--gold)}.slot.is-active .slot-name{fill:var(--accent)}.slot.is-doubtful .slot-name{fill:var(--ink-soft);font-style:italic}.hub-name{font-family:var(--font-display);font-size:26px;letter-spacing:var(--tracking-anim);text-transform:var(--case);fill:var(--ink)}.hub-epithet{font-family:var(--font-body);font-size:13px;fill:var(--gold);letter-spacing:.08em}.hub-era{font-size:11px;fill:var(--ink-soft);letter-spacing:.06em}.hub-deity{font-family:var(--font-display);font-size:13px}.hub-deity.is-active{font-size:15px}.hub-tradition{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;opacity:.75}.hub-hit{cursor:pointer;pointer-events:all}.hub-link,.displacement{stroke:var(--gold);opacity:.55}.hub-link.kind-cognate,.displacement.kind-cognate{stroke:var(--accent);opacity:.9}.displacement-hit{pointer-events:stroke;cursor:pointer}.displacement-tag{font-family:var(--font-display);font-size:12px;fill:var(--accent);letter-spacing:.08em;pointer-events:none}.braid{max-width:1020px;margin:0 auto;padding:8px 4px 40px}.braid-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-bottom:18px;max-width:906px}.braid-tab{line-height:1.3;padding:9px 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:transparent;border:1px solid color-mix(in srgb,var(--gold) 22%,transparent);color:var(--ink-soft);font-family:var(--font-display);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:all var(--morph)}.braid-tab.is-active{color:var(--ground);background:var(--gold);border-color:var(--gold)}.braid-head{max-width:78ch}.braid-gloss{margin:0;font-size:.86rem;line-height:1.65;color:var(--ink-soft)}.braid-hint{margin:12px 0 0;font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:var(--gold);opacity:.75}.braid-switch{display:inline-flex;align-items:center;gap:7px;width:116px;margin-top:14px;padding:5px 10px;line-height:1.4;background:transparent;border:1px solid color-mix(in srgb,var(--gold) 22%,transparent);color:var(--ink-soft);font-family:var(--font-display);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:all var(--morph)}.braid-switch-dot{width:6px;height:6px;border:1px solid color-mix(in srgb,var(--gold) 55%,transparent);border-radius:50%;transition:background var(--morph)}.braid-switch:hover{border-color:color-mix(in srgb,var(--gold) 45%,transparent);color:var(--ink)}.braid-switch.is-on{color:var(--gold);border-color:color-mix(in srgb,var(--gold) 50%,transparent)}.braid-switch.is-on .braid-switch-dot{background:var(--gold);border-color:var(--gold)}.braid-keys{display:flex;flex-wrap:wrap;gap:6px;margin:20px 0 8px;padding-bottom:18px;border-bottom:1px solid color-mix(in srgb,var(--gold) 16%,transparent)}.braid-key{display:flex;align-items:center;gap:8px;padding:7px 14px 7px 8px;background:transparent;border:1px solid color-mix(in srgb,var(--key-gold) 26%,transparent);color:var(--ink-soft);cursor:pointer;opacity:.62;transition:opacity var(--morph),background var(--morph),border-color var(--morph)}.braid-key:hover{opacity:1}.braid-key.is-active{opacity:.9}.braid-key.is-open{opacity:1;border-color:var(--key-gold);background:color-mix(in srgb,var(--key-gold) 13%,transparent)}.braid-key.is-dim{opacity:.28}.braid-key-mark{width:26px;height:26px;flex:none}.braid-key-name{line-height:1.3;font-family:var(--font-display);font-size:.74rem;letter-spacing:.15em;text-transform:uppercase;color:var(--key-gold)}.braid-flow{display:grid;grid-template-columns:240px minmax(0,1fr);column-gap:28px;align-items:stretch}.braid-rail{position:relative;min-height:132px}.braid-rail-svg{position:absolute;top:0;right:0;bottom:0;left:0;display:block;overflow:visible}.plait-casing{stroke:var(--ground)}.plait-halo{opacity:.16}.plait-strand{opacity:.88;transition:opacity var(--morph)}.plait-strand.is-quiet{opacity:.34}.plait-strand.is-dim{opacity:.1}.plait-strand.is-focus{opacity:1}.plait-clasp{fill:color-mix(in srgb,var(--gold) 13%,transparent);stroke:color-mix(in srgb,var(--gold) 32%,transparent);stroke-width:1;transition:fill var(--morph),stroke var(--morph)}.plait-dot{stroke:var(--ground);transition:opacity var(--morph)}.plait-gap{opacity:.5}.plait-node.is-dim{opacity:.15}.plait-hit{cursor:pointer}.braid-story{padding:4px 0 34px}.braid-beat{margin-bottom:8px}.braid-beat-name{line-height:1.45;display:block;font-family:var(--font-display);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.braid-beat-gloss{display:block;margin-top:3px;font-size:.72rem;color:var(--ink-soft)}.braid-summary{margin:0 0 16px;max-width:66ch;font-size:.95rem;line-height:1.75}.braid-stances{display:flex;flex-direction:column;gap:9px}.braid-stance{display:grid;grid-template-columns:16ch minmax(0,1fr);gap:4px 14px;align-items:start;padding:5px 0 5px 10px;border-left:2px solid transparent}.braid-stance.is-shared{border-left-color:color-mix(in srgb,var(--gold) 45%,transparent);background:color-mix(in srgb,var(--gold) 4%,transparent)}.braid-stance-label{padding-top:6px;font-family:var(--font-display);font-size:.63rem;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}.braid-stance.is-shared .braid-stance-label{color:var(--gold)}.braid-chips{display:flex;flex-wrap:wrap;gap:5px 8px}.chip{display:inline-flex;align-items:center;gap:7px;padding:4px 9px;line-height:1.5;background:transparent;border:none;border-bottom:1.5px solid color-mix(in srgb,var(--kw) 55%,transparent);color:var(--ink);font-family:var(--font-body);font-size:.85rem;text-align:left;cursor:pointer;transition:background var(--morph),border-color var(--morph),opacity var(--morph)}.chip-tradition{line-height:1.4;font-family:var(--font-display);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--kw)}.chip:hover,.chip.is-focus{background:color-mix(in srgb,var(--kw) 18%,transparent);border-bottom-color:var(--kw)}.chip.is-open{background:color-mix(in srgb,var(--kw) 12%,transparent)}.chip.is-quiet{font-style:italic;color:var(--ink-soft);border-bottom-style:dotted}.chip.is-dim{opacity:.3;border-bottom-color:transparent}.chip:focus-visible{outline:1px solid var(--kw);outline-offset:2px}.chip-source{display:none}.braid[data-sources=on] .chip{flex-wrap:wrap}.braid[data-sources=on] .chip-source{display:block;flex-basis:100%;margin-top:1px;font-family:var(--font-body);font-size:.72rem;line-height:1.45;font-style:italic;color:var(--ink-soft);opacity:.85}.braid-account{margin-top:16px;padding:2px 0 2px 16px;border-left:2px solid var(--acc-gold);font-size:.85rem;line-height:1.7}.braid-account.is-absent{border-left-style:dotted}.braid-account p{margin:0}.braid-account-name{line-height:1.4;display:block;margin-bottom:5px;font-family:var(--font-display);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--acc-gold)}.braid-absent-mark{display:block;margin-bottom:5px;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.braid-absence{font-style:italic;color:var(--ink-soft)}.braid-account p.braid-cite{margin-top:9px;font-size:.74rem;line-height:1.5;font-style:italic;color:var(--ink-soft)}.braid-account p.braid-attest{margin-top:5px;padding-left:10px;border-left:1px solid color-mix(in srgb,var(--accent) 40%,transparent);font-size:.74rem;line-height:1.55;color:var(--ink-soft)}.braid-payoff{margin-top:20px;padding:20px 24px;border-left:2px solid var(--gold);background:color-mix(in srgb,var(--ground-alt) 60%,transparent)}.braid-payoff h3{line-height:1.4;margin:0 0 10px;font-family:var(--font-display);font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.braid-payoff p{margin:0;font-size:.9rem;line-height:1.7;white-space:pre-line}.detail{position:relative}.detail-empty{font-size:.84rem;line-height:1.65;color:var(--ink-soft)}.detail-empty p{margin:0 0 14px}.detail-head{position:relative;padding-right:28px}.detail-close{position:absolute;top:-4px;right:-4px;width:26px;height:26px;background:transparent;border:1px solid color-mix(in srgb,var(--gold) 30%,transparent);color:var(--ink-soft);font-size:1rem;line-height:1;cursor:pointer}.detail-kicker{line-height:1.4;margin:0;font-family:var(--font-display);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.detail-gloss{margin:8px 0 20px;font-size:.8rem;line-height:1.55;color:var(--ink-soft)}.detail-body h2{line-height:1.2;margin:0;font-family:var(--font-display);font-size:1.7rem;font-weight:500;letter-spacing:calc(var(--tracking) * .5);text-transform:var(--case)}.detail-native{margin:4px 0 0;font-size:1rem;color:var(--gold)}.detail-role{margin:12px 0 0;font-size:.88rem;line-height:1.6}.detail-also,.detail-fit{margin:12px 0 0;font-size:.74rem;letter-spacing:.06em;color:var(--ink-soft)}.detail-fit{padding:8px 10px;border-left:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.detail-body h3{line-height:1.4;margin:26px 0 8px;font-family:var(--font-display);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.detail-nuance{margin:0;font-size:.84rem;line-height:1.7}.detail-emblem{padding:10px 12px;border-left:2px solid var(--gold);background:color-mix(in srgb,var(--gold) 7%,transparent)}.detail-emblem-name{line-height:1.4;margin:0;font-family:var(--font-display);font-size:.92rem;color:var(--ink)}.detail-emblem-note{margin:5px 0 0;font-size:.76rem;line-height:1.6;color:var(--ink-soft)}.detail-links{list-style:none;margin:0;padding:0}.detail-link{padding:12px 0 12px 12px;border-left:2px solid var(--gold);margin-bottom:12px}.detail-link.kind-cognate{border-left-style:solid;border-left-color:var(--accent)}.detail-link.kind-syncretic{border-left-style:dashed}.detail-link.kind-typological{border-left-style:dotted;opacity:.72}.detail-link-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;width:100%;padding:0;background:transparent;border:none;color:inherit;text-align:left;cursor:pointer}.detail-link-kind{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.detail-link.kind-cognate .detail-link-kind{color:var(--accent)}.detail-link-name{line-height:1.35;font-family:var(--font-display);font-size:1rem}.detail-link-head:hover .detail-link-name{color:var(--accent);text-decoration:underline}.detail-link-where{font-size:.68rem;color:var(--ink-soft);letter-spacing:.08em}.detail-link-note{margin:6px 0 0;font-size:.76rem;line-height:1.6;color:var(--ink-soft)}.legend-host{margin-top:32px;padding-top:20px;border-top:1px solid color-mix(in srgb,var(--gold) 18%,transparent)}.legend-title{line-height:1.4;margin:0 0 12px;font-family:var(--font-display);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.legend-row{display:grid;grid-template-columns:26px 1fr;gap:4px 10px;margin-bottom:12px;align-items:baseline}.legend-swatch{display:block;width:24px;border-top-width:2px;border-top-color:var(--gold)}.legend-row.kind-cognate .legend-swatch{border-top-color:var(--accent)}.legend-label{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}.legend-gloss{grid-column:2;font-size:.72rem;line-height:1.55;color:var(--ink-soft)}.footnote{margin-top:26px;font-size:.68rem;line-height:1.6;color:var(--ink-soft);opacity:.8}.footnote p{margin:0}@media (max-width: 1080px){.stage{grid-template-columns:minmax(0,1fr)}.sidebar{border-left:none;border-top:1px solid color-mix(in srgb,var(--gold) 18%,transparent);max-height:none}.topbar{padding:18px 20px 14px}}@media (prefers-reduced-motion: reduce){*{transition-duration:1ms!important}}@media (max-width: 860px){.braid{padding:8px 0 32px}.braid-flow{grid-template-columns:76px minmax(0,1fr);column-gap:14px}.braid-stance{grid-template-columns:minmax(0,1fr);gap:3px;padding-left:8px}.braid-summary{font-size:.9rem;line-height:1.7}.braid-payoff{padding:16px 16px 16px 18px}}@media (max-width: 560px){.braid-flow{grid-template-columns:64px minmax(0,1fr);column-gap:10px}.braid-rail{min-height:116px}.braid-tabs{grid-template-columns:minmax(0,1fr)}.braid-tab{padding:8px 11px;font-size:.66rem}.braid-key{padding:5px 10px 5px 6px}.braid-key-mark{width:20px;height:20px}.chip{font-size:.8rem}.topbar{min-height:0;gap:14px 18px}.brand{flex:1 1 100%}.brand h1{font-size:1.12rem}.tradition-bar{flex-wrap:wrap}.tradition-btn{width:64px;padding:6px 2px 8px}.tradition-mark{width:26px;height:26px}.view-btn{width:84px}}
