.weave{position:relative;padding-bottom:36px}.weave-heads{position:relative;height:72px}.weave-head{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:16px;font-family:var(--heading);font-size:var(--fs-title);font-weight:500;letter-spacing:1px;text-transform:uppercase;color:var(--ink)}.weave-head svg{flex:none;width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.weave-field{position:relative;height:var(--weave-h);margin-top:8px}.weave-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.weave-axis{stroke:var(--line-soft);stroke-width:1;vector-effect:non-scaling-stroke}.weave-path{fill:none;vector-effect:non-scaling-stroke}.weave-path{stroke:var(--ink-muted);stroke-opacity:.42;stroke-width:1.2;transition:stroke var(--dur-hover), stroke-opacity var(--dur-hover), stroke-width var(--dur-hover)}.weave-line.is-mid .weave-path{stroke-opacity:.3}.weave-line.is-old .weave-path{stroke-dasharray:5 5;stroke-opacity:.28}.weave-line.is-off .weave-path{stroke-opacity:.07}.weave-line.is-on .weave-path{stroke:var(--accent);stroke-opacity:1;stroke-width:2.4}.weave-line.is-on.is-mid .weave-path{stroke:var(--accent-deep)}.weave-line.is-on.is-old .weave-path{stroke:var(--ink-dim);stroke-width:2}.weave-col{position:absolute;top:0;bottom:0}.weave-col-name{display:none}.weave-nodes{position:relative;height:100%}.weave-node{position:absolute;left:0;right:0;height:var(--weave-node);transform:translateY(-50%);display:flex;align-items:center;gap:12px;padding:0 0 0 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--solid-card);color:var(--ink-dim);font:inherit;font-size:var(--fs-name);text-align:left;cursor:pointer;transition:border-color var(--dur-hover), box-shadow var(--dur-hover), opacity var(--dur-hover), color var(--dur-hover)}.weave-panel .weave-node{background:var(--node-bg);backdrop-filter:blur(2px)}.weave-panel .weave-node.is-none{background:color-mix(in srgb, var(--surface-sunken) 70%, transparent)}.weave-node:hover{border-color:var(--surface-raised);color:var(--ink)}.weave-mark{flex:none;display:grid;place-items:center;width:24px;height:24px;color:var(--ink-dim);transition:color var(--dur-hover)}.weave-mark svg{width:24px;height:24px;display:block}.weave-dot{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--dot, var(--ink-muted));background:color-mix(in srgb, var(--dot, transparent) 35%, transparent)}.weave-dash{width:12px;height:0;border-top:1.5px solid var(--ink-faint)}.weave-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.weave-count{flex:none;align-self:stretch;display:grid;place-items:center;min-width:44px;border-left:1px solid var(--line);font-family:var(--heading);font-size:var(--fs-plate);color:var(--ink-muted);transition:color var(--dur-hover)}.weave-node.is-none{border-style:dashed;background:var(--solid-sunken)}.weave-node.is-none .weave-name{color:var(--ink-muted)}.weave-node.is-lit{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.weave-node.is-lit .weave-mark,.weave-node.is-lit .weave-count{color:var(--accent)}.weave-node[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.weave-node[aria-pressed=true] .weave-mark,.weave-node[aria-pressed=true] .weave-count{color:var(--accent)}.weave-panel.has-focus .weave-node:not(.is-lit):not([aria-pressed=true]){opacity:.55}.weave-node.is-empty{opacity:.3}.weave-panel.has-focus .weave-node.is-empty{opacity:.2}.weave-node.is-lit::before,.weave-node.is-lit::after{content:'';position:absolute;top:50%;width:10px;height:10px;transform:translateY(-50%);border-radius:50%;background:var(--accent)}.weave-node.is-lit::before{left:-6px}.weave-node.is-lit::after{right:-6px}.weave-col[data-col="0"] .weave-node::before,.weave-col:last-child .weave-node::after{display:none}@media (max-width:1100px){.weave-heads,.weave-lines{display:none}.weave{padding-bottom:20px}.weave-field{height:auto;margin-top:4px;display:grid;gap:14px}.weave-col{position:static;left:auto!important;width:auto!important;display:grid;gap:8px;min-width:0}.weave-col-name{display:block;font-size:var(--fs-label);font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink-muted)}.weave-nodes{height:auto;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.weave-nodes::-webkit-scrollbar{display:none}.weave-node{position:static;flex:none;transform:none;height:44px;padding:0 0 0 14px;border-radius:999px}.weave-name{overflow:visible}.weave-count{min-width:40px;border-radius:0 999px 999px 0}.weave-node.is-lit::before,.weave-node.is-lit::after{display:none}}.weave.is-choice{padding-bottom:8px}.weave.is-choice .weave-field{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;height:auto;margin-top:0}.weave.is-choice .weave-lines{overflow:visible}.weave.is-choice .weave-col{position:static;left:auto!important;width:auto!important;display:flex;flex-direction:column;gap:8px;min-width:0}.weave.is-choice .weave-col-name{display:flex;align-items:center;gap:8px;min-height:24px;font-family:var(--heading);font-size:var(--fs-label);font-weight:500;letter-spacing:1px;text-transform:uppercase;color:var(--ink)}.weave.is-choice .weave-col-name svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.weave.is-choice [data-choice^="bg:"] .weave-mark svg{fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.weave.is-choice .weave-nodes{position:static;height:auto;display:flex;flex-direction:column;gap:8px;overflow:visible}.weave.is-choice .weave-node{position:relative;top:auto!important;left:auto;right:auto;transform:none;height:auto;min-height:48px;width:auto;padding:8px 12px;background:var(--node-bg);z-index:1}.weave.is-choice .weave-name{white-space:normal;overflow:hidden}.weave.is-choice .weave-name small{display:block;margin-top:2px;font-family:var(--text);font-size:var(--fs-hint);font-weight:400;letter-spacing:0;text-transform:none;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weave.is-choice .weave-node:has(>.stat-tiles,>.bld-bonuses){flex-wrap:wrap;row-gap:8px;padding-bottom:10px}.weave.is-choice .weave-node>.stat-tiles,.weave.is-choice .weave-node>.bld-bonuses{flex:1 0 100%;min-width:0;padding-left:36px}.weave.is-choice .bld-bonuses{display:flex;flex-wrap:wrap;gap:4px}.weave.is-choice .weave-node[style*="--race-color"] .weave-mark{color:var(--race-color)}.weave.is-choice .weave-node[style*="--race-color"] .bld-cat{color:var(--race-color)}:root[data-theme="light"] .weave.is-choice .weave-node[style*="--race-color"] .bld-cat{color:color-mix(in srgb, var(--race-color) 78%, var(--ink))}@media (max-width:760px){.weave.is-choice .weave-node>.stat-tiles,.weave.is-choice .weave-node>.bld-bonuses{padding-left:0}.weave.is-choice .stat-tiles.is-bars.is-mini .stat-value{padding-left:6px}}.weave.is-choice .weave-node.is-out{opacity:.38;cursor:default}.weave.is-choice .weave-node.is-out .weave-name{text-decoration:line-through}.weave.is-choice.is-rows .weave-field{grid-template-columns:minmax(0,1fr);gap:12px}.weave.is-choice.is-rows .weave-col{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:start}.weave.is-choice.is-rows .weave-nodes{flex-direction:row;flex-wrap:wrap}.weave.is-choice.is-rows .weave-node{flex:1 1 180px}@media (max-width:1100px){.weave.is-choice .weave-lines{display:block}.weave.is-choice .weave-field{grid-template-columns:minmax(0,1fr);gap:12px;height:auto}.weave.is-choice .weave-col{position:static;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;width:auto!important;left:auto!important}.weave.is-choice .weave-col-name{display:flex}.weave.is-choice .weave-nodes{flex-direction:row;flex-wrap:wrap;height:auto;overflow:visible}.weave.is-choice .weave-node{position:relative;flex:1 1 160px;transform:none;height:auto;border-radius:var(--r-sm)}}.weave.is-choice.is-steps{padding:0}.weave.is-choice.is-steps .weave-field{grid-template-columns:minmax(0,1fr);gap:32px}.weave.is-choice.is-steps .weave-col{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.weave.is-choice.is-steps .bld-step-title{margin:0}.weave.is-choice.is-steps .weave-nodes{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;padding:0}.weave.is-choice.is-steps .bld-choice-item>.weave-node{border-radius:var(--r-sm);flex:1}.weave.is-choice.is-steps .weave-name small{white-space:normal}@media (max-width:480px){.weave.is-choice.is-steps .weave-nodes{grid-template-columns:minmax(0,1fr)}}
