.builds-main{padding-block:64px 80px}
.builds-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:52px}
.builds-heading .eyebrow{margin-bottom:20px}
.builds-heading h1{font-size:clamp(42px,3.8vw,72px);letter-spacing:-.045em}
.builds-heading h1 span{margin-left:.24em}
.builds-heading p:last-child{margin:22px 0 0;color:var(--muted);font-size:15px}
.planner-version{display:grid;text-align:right;gap:7px;flex-shrink:0}
.planner-version>span{color:var(--gold);font-size:11px;border:1px solid rgba(230,182,93,.3);border-radius:3px;padding:5px 11px}
.planner-version small{font-size:11px;color:var(--muted)}
.section-label{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}
.section-label h2{font-size:16px;letter-spacing:0;font-weight:600}
.section-label>span{font-size:9px;letter-spacing:.14em;color:#8193a4}
.family-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.family-choice{display:flex;align-items:center;gap:13px;padding:18px 16px;border:1px solid var(--line);border-radius:4px;background:#0e1a27;color:var(--text);text-align:left;cursor:pointer;min-width:0}
.family-choice:hover{border-color:#62727f;background:#132231}
.family-choice[aria-pressed="true"]{border-color:var(--gold);background:#202629;box-shadow:inset 0 -2px 0 var(--gold)}
.family-monogram{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border:1px solid #445562;border-radius:50%;color:#becbd5;font-size:11px;letter-spacing:.04em}
.family-choice[aria-pressed="true"] .family-monogram{border-color:var(--gold);color:var(--gold)}
.family-choice small{display:block;color:#899dad;text-transform:uppercase;letter-spacing:.12em;font-size:8px;margin-bottom:3px}
.family-choice strong{display:block;font-size:13px;font-weight:600;line-height:1.4}
.planner-workspace{margin-top:32px;border:1px solid var(--line);border-radius:5px;background:#0e1925;overflow:hidden}
.planner-toolbar{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px 30px;background:#12202d}
.planner-toolbar .small-label{margin-bottom:8px}
.planner-toolbar h2{font-size:30px}
.point-budget{text-align:right;display:grid;gap:2px}
.point-budget>span{font-size:9px;color:#a0b0be;letter-spacing:.1em}
.point-budget>span:last-child{color:var(--gold);letter-spacing:0;font-size:11px}
.point-budget strong{font-size:29px;line-height:1.3;font-weight:550}
.point-budget small{font-size:18px;font-weight:400;color:#8195a7}
.planner-controls{padding:15px 30px;border-block:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}
.view-controls,.build-actions{display:flex;align-items:center;gap:8px}
.planner-controls button{border:1px solid transparent;background:transparent;border-radius:3px;color:#9cabb9;padding:8px 12px;font-size:11px;cursor:pointer}
.planner-controls button:hover:not(:disabled){color:var(--text);background:#1a2a38}
.view-choice[aria-pressed="true"]{background:#203342;border-color:#3b4f5e;color:var(--text)}
.build-actions button:first-child{border-color:var(--line);color:var(--gold)}
.build-actions button:disabled{opacity:.45;cursor:default}
.build-actions button span{margin-left:14px}
.planner-body{display:grid;grid-template-columns:minmax(0,1fr) 285px}
.tree-workspace{min-width:0}
.skill-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-inline:24px;border-bottom:1px solid var(--line);gap:18px;background:#101e2b}
.skill-tabs button{font:inherit;font-size:12px;border:0;border-bottom:2px solid transparent;background:transparent;color:#91a4b5;padding:18px 0 16px;cursor:pointer;text-align:left;line-height:1.5}
.skill-tabs button span{display:block;font-size:9px;color:#738b9d;margin-top:3px}
.skill-tabs button[aria-selected="true"]{color:var(--gold);border-bottom-color:var(--gold)}
.tree-panels{display:grid;min-height:460px}
.tree-panel{padding:28px;min-width:0;display:flex;flex-direction:column}
.tree-panel[hidden],.skill-tabs[hidden]{display:none}
.tree-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.tree-panel-heading .small-label{margin-bottom:8px;color:#728a9c;font-size:8px;letter-spacing:.12em}
.tree-panel-heading h3{font-size:22px}
.tree-points{font-size:11px;color:#859aab;white-space:nowrap}
.tree-empty{display:flex;align-items:center;justify-content:center;flex:1;flex-direction:column;padding-block:45px;text-align:center;background-image:radial-gradient(circle,rgba(185,205,221,.07) 1px,transparent 1px);background-size:22px 22px;margin-top:22px;min-height:290px;border-radius:3px}
.empty-tree{width:200px;height:85px;stroke:#354c5b;stroke-width:1.5;margin-bottom:25px}
.empty-tree rect:first-of-type{stroke:#a0824d;fill:#192a33}
.tree-empty .empty-title{font-size:15px;color:#c2cdd5;font-weight:600;margin:0 0 6px}
.tree-empty p{font-size:12px;color:#8194a5;max-width:32ch;margin-bottom:18px;padding-inline:8px}
.catalog-label{font-size:9px;color:#a5b0ba;padding:4px 10px;border:1px dashed #3e505d;border-radius:3px}
.build-summary{border-left:1px solid var(--line);padding:28px 25px;background:#101d29}
.build-summary>.small-label{font-size:9px;color:#849aaa;margin-bottom:18px}
.build-summary h3{font-size:24px;line-height:1.22;margin-bottom:16px}
.summary-description{font-size:12px;color:var(--muted);line-height:1.8}
.build-summary dl{margin-block:26px 20px}
.build-summary dl div{display:flex;justify-content:space-between;gap:16px;padding-block:10px;font-size:11px;border-bottom:1px solid var(--line)}
.build-summary dt{color:#9aaebf}
.build-summary dd{margin:0;color:#ced6de;white-space:nowrap}
.summary-total{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:11px;color:#c5d1da}
.summary-total strong{font-size:22px;color:var(--gold);font-weight:500}
.skill-inspector{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}
.inspector-mark{width:28px;height:28px;border:1px solid #415363;border-radius:4px;display:grid;place-items:center;color:#8094a6;font-size:16px;margin-bottom:13px}
.skill-inspector h4{margin:0 0 7px;font-size:12px;font-weight:600}
.skill-inspector p{font-size:11px;color:#8499aa;line-height:1.8;margin:0}
.catalog-notice{display:flex;gap:12px;align-items:start;padding:18px 30px;border-top:1px solid var(--line);background:#13212b}
.catalog-notice>span{font-family:Georgia,serif;color:var(--gold);line-height:1.8}
.catalog-notice p{font-size:11px;color:#9caebd;margin:0}
#planner-status:not(:empty){margin:0;padding:16px 30px;color:var(--gold);font-size:12px}
#planner-status:empty{display:none}
#manual-share{padding:0 30px 22px}
#manual-share label{display:block;font-size:11px;color:var(--muted);margin-bottom:8px}
#build-link{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:3px;background:var(--bg);color:var(--text);font:inherit;font-size:12px}
.is-overview .tree-panels{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr}
.is-overview .tree-panel{border-bottom:1px solid var(--line)}
.is-overview .tree-scroll{flex:1 0 auto}
.is-overview .tree-panel:nth-child(odd){border-right:1px solid var(--line)}
.is-overview .tree-empty{min-height:210px;padding-block:25px}
.is-overview .empty-tree{width:150px;height:64px}
@media(max-width:1350px){.family-options{grid-template-columns:repeat(3,minmax(0,1fr))}.planner-body{grid-template-columns:minmax(0,1fr) 245px}.build-summary{padding:25px 20px}.planner-toolbar,.planner-controls{padding-inline:24px}}
@media(max-width:950px){.planner-body{grid-template-columns:1fr}.build-summary{border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:0 36px}.build-summary>.small-label,.build-summary h3,.summary-description{grid-column:1}.build-summary dl{grid-column:2;grid-row:1/4;margin:0}.summary-total{grid-column:2;grid-row:4}.skill-inspector{grid-column:1;grid-row:4;margin:0;border:0;padding:0}.skill-inspector .inspector-mark{display:none}}
@media(max-width:620px){.builds-main{padding-block:40px 50px}.builds-heading{display:block;margin-bottom:32px}.builds-heading h1 span{display:block;margin:0}.builds-heading p:last-child{font-size:13px;max-width:45ch}.planner-version{display:flex;align-items:center;gap:14px;margin-top:22px}.family-options{grid-template-columns:repeat(2,minmax(0,1fr))}.family-choice{padding:13px 10px}.family-monogram{display:none}.family-choice strong{font-size:12px}.section-label>span{display:none}.planner-workspace{margin-top:24px}.planner-toolbar{padding:22px 18px;gap:14px}.planner-toolbar h2{font-size:24px}.point-budget strong{font-size:24px}.point-budget>span{font-size:8px}.point-budget>span:last-child{font-size:10px}.planner-controls{padding:12px;flex-wrap:wrap;gap:12px}.planner-controls button{font-size:10px;padding:8px}.build-actions{margin-left:auto}.skill-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;padding-inline:18px}.skill-tabs button{padding-block:13px;font-size:12px}.tree-panel{padding:20px 18px}.tree-panels{min-height:400px}.tree-empty{min-height:260px;padding-block:25px}.tree-panel-heading h3{font-size:20px}.is-overview .tree-panels{grid-template-columns:1fr;grid-auto-rows:auto}.is-overview .tree-panel:nth-child(odd){border-right:0}.build-summary{display:block;padding:24px 18px}.build-summary h3 br{display:none}.build-summary h3{font-size:21px}.build-summary dl{margin-block:20px}.skill-inspector{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.catalog-notice{padding:16px 18px}#planner-status:not(:empty){padding:16px 18px}#manual-share{padding-inline:18px}}

.tree-scroll{overflow:auto;max-width:100%;margin-top:22px;border:1px solid rgba(185,205,221,.06);border-radius:3px;background-image:radial-gradient(circle,rgba(185,205,221,.08) 1px,transparent 1px);background-size:22px 22px}
.skill-canvas{position:relative;margin-inline:auto;flex-shrink:0}
.skill-connections{position:absolute;inset:0;pointer-events:none;fill:none;stroke:#425b6b;stroke-width:1.5;stroke-dasharray:4 3}
.skill-node{position:absolute;width:64px;height:64px;display:flex;align-items:center;flex-direction:column}
.skill-icon{display:grid;place-items:center;width:44px;height:44px;padding:4px;border:1px solid #445b6a;border-radius:5px;background:#12212e;cursor:pointer}
.skill-icon img{display:block;filter:grayscale(.7);opacity:.64;image-rendering:auto;object-fit:contain}
.skill-icon:hover,.skill-icon:focus-visible{border-color:var(--gold)}
.skill-htb .skill-icon{border-color:#7f6650}
.is-learned .skill-icon{border-color:#a79055;background:#2c3028}
.is-learned .skill-icon img{filter:none;opacity:1}
.is-selected .skill-icon{outline:2px solid var(--gold);outline-offset:2px}
.skill-rank-controls{display:flex;align-items:center;width:64px;height:18px;justify-content:space-between;margin-top:2px;background:#0b151e;border-radius:3px}
.skill-rank-controls button{display:grid;place-items:center;border:0;padding:0;width:18px;height:18px;font:inherit;font-size:13px;color:var(--gold);background:#233746;border-radius:2px;cursor:pointer;line-height:1}
.skill-rank-controls button:disabled{color:#556f80;background:#10212d;cursor:default}
.skill-rank-controls button:hover:not(:disabled){background:#3a4c4d}
.skill-rank{font-size:9px;color:#b3c1cd;line-height:1;font-variant-numeric:tabular-nums}
.inspector-icon{display:block;padding:3px;border:1px solid #566c78;border-radius:4px;margin-bottom:13px;object-fit:contain}
.skill-inspector .inspector-rank{color:var(--gold);font-size:10px;margin-bottom:12px}
.skill-inspector h4{font-size:15px;line-height:1.4}
.skill-inspector .inspector-description{font-size:12px;margin-bottom:14px}
.build-summary .inspector-stats{margin:0}
.build-summary .inspector-stats div{padding-block:7px;font-size:10px}
.build-summary .inspector-stats dd{text-align:right;white-space:normal}
.build-summary{align-self:start;position:sticky;top:110px}
@media(max-width:950px){.build-summary{position:static}.build-summary .skill-inspector{grid-column:1/-1;grid-row:auto;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.build-summary .inspector-stats{max-width:400px}}
@media(max-width:620px){.tree-scroll{margin-top:20px}.skill-rank-controls button{min-width:18px}.tree-panel{min-width:0}}

.inspector-effects{padding:13px 0 15px;border-top:1px solid var(--line);overflow-wrap:anywhere}
.inspector-effects h5{margin:0 0 10px;color:var(--gold);font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.inspector-effects ul{margin:0;padding-left:15px;display:grid;gap:9px;color:#d4dee6;font-size:12px;line-height:1.65}
.inspector-effects li::marker{color:var(--gold)}
.skill-inspector .inspector-effect-note{margin-top:12px;color:#8499aa;font-size:10px;line-height:1.6}
