.tc{gap:16px;min-width:0;display:grid}.tc .class-calc-tile{border-radius:4px}.tc-bar,.tc-order{border:1px solid var(--color-plate-line);background:var(--color-plate);box-shadow:var(--shadow-plate);border-radius:4px}.tc-bar{flex-wrap:wrap;align-items:center;gap:12px 24px;padding:12px 16px;display:flex}.tc-bar-class{align-items:center;gap:12px;display:flex}.tc-bar-icon{place-items:center;display:grid}.tc-bar-name{font-family:var(--font-heading);margin:0;font-size:19px;font-weight:700;line-height:1.15}.tc-bar-split{color:var(--color-ink-3);font-variant-numeric:tabular-nums;letter-spacing:.04em;margin:2px 0 0;font-size:13px}.tc-stats{gap:22px;margin:0;display:flex}.tc-stats dt{letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-3);font-size:11.5px;font-weight:600}.tc-stats dd{color:var(--color-gold-title);font-variant-numeric:tabular-nums;margin:0;font-size:24px;font-weight:700;line-height:1.2}.tc-stats dd[data-tone=zero]{color:var(--color-amber)}.tc-stats dd[data-tone=over]{color:var(--color-danger)}.tc-level-slider{flex:260px;min-width:220px}.tc-bar-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.tc-warn{color:var(--color-danger);margin:0;font-size:13px}.tc-presets{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.tc-presets-label{letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-3);font-size:11.5px;font-weight:600}.tc-presets-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tc-chip{border:1px solid var(--color-plate-line);background:var(--color-plate);min-height:28px;color:var(--color-ink-2);cursor:pointer;border-radius:4px;padding:3px 11px;font-size:12.5px;font-weight:600;transition:border-color .15s,color .15s}.tc-chip:hover{border-color:var(--color-plate-line-hover);color:var(--color-ink)}.tc-chip[aria-pressed=true]{border-color:var(--color-amber-selected-line);background:var(--color-amber-selected-bg);color:var(--color-gold-title)}.tc-tabs,.tc-tapmode{min-width:0}.tc-tapmode{display:none}@media (pointer:coarse){.tc-tapmode{display:block}}.tc-help{color:var(--color-ink-3);margin:0;font-size:12.5px}.tc-trees{gap:16px;min-width:0;display:grid}.tc-tree{--p:min(80px, calc((100vw - 2 * var(--gutter) - 34px) / 4.56));width:calc(var(--p) * 4.56 + 30px);border:1px solid var(--color-plate-line);background:var(--color-plate);max-width:100%;box-shadow:var(--shadow-plate);border-radius:4px;justify-self:center;padding:0 14px 18px;display:none;position:relative}.tc-tree.tc-active{display:block}.tc-tree[data-spent]{border-color:color-mix(in srgb, var(--tree) 40%, transparent)}@media (min-width:80rem){.tc-tabs{display:none}.tc-trees{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.tc-tree{--p:74px;justify-self:stretch;width:auto;display:block}}@media (min-width:1416px){.tc-tree{--p:84px}}.tc-tree-head{border-bottom:1px solid var(--color-plate-line);background:linear-gradient(180deg, color-mix(in srgb, var(--tree) 16%, transparent), transparent);align-items:center;gap:8px;margin:0 -14px 14px;padding:10px 14px;display:flex}.tc-tree-icon{border:1px solid var(--color-plate-line-hover);border-radius:4px;width:28px;height:28px}.tc-tree-name{font-family:var(--font-heading);letter-spacing:.01em;color:var(--color-gold-title);margin:0;font-size:18px;font-weight:700}.tc-tree-points{color:var(--tree);font-variant-numeric:tabular-nums;margin-left:auto;font-size:22px;font-weight:700}.tc-mini-btn{border:1px solid var(--color-plate-line);min-width:24px;min-height:24px;color:var(--color-ink-2);cursor:pointer;background:0 0;border-radius:4px;padding:2px 9px;font-size:12px;font-weight:600;transition:border-color .15s,color .15s}.tc-mini-btn:hover:not(:disabled){border-color:var(--color-plate-line-hover);color:var(--color-ink)}.tc-mini-btn:disabled{opacity:.4;cursor:not-allowed}.tc-board{width:calc(var(--p) * 4.56);max-width:100%;height:calc(var(--p) * var(--tiers));margin-inline:auto;position:relative}.tc-tier{inset-inline:0;top:calc(var(--p) * var(--row));height:var(--p);border-top:1px solid #0000;position:absolute}.tc-tier:not([data-open]){background:repeating-linear-gradient(135deg,#ffffff05 0 6px,#0000 6px 12px),#00000052}.tc-tier[data-next]{border-top-color:var(--color-plate-line-hover);border-top-style:dashed}.tc-tier-label{inset-block:0;width:calc(var(--p) * .56);font-variant-numeric:tabular-nums;color:var(--tree);flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:11.5px;display:flex;position:absolute;left:0}.tc-tier:not([data-open]) .tc-tier-label{color:var(--color-ink-3)}.tc-tier-more{white-space:nowrap;color:var(--color-ink-3);font-size:10px}.tc-lock{opacity:.7}.tc-arrows{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.tc-arrow{color:#d6be8c47}.tc-arrow-met{color:var(--tree)}.tc-stem{fill:none;stroke:currentColor;stroke-width:3px}.tc-head{fill:currentColor;stroke:none}.tc-node{z-index:2;left:calc(var(--p) * (.56 + var(--col) + .16));top:calc(var(--p) * (var(--row) + .16));box-sizing:border-box;width:calc(var(--p) * .68);height:calc(var(--p) * .68);background:var(--color-plate);color:inherit;cursor:pointer;border:2px solid #d6be8c24;border-radius:6px;padding:0;transition:border-color .2s,transform .15s;position:absolute}.tc-node[data-ability]{border-radius:50%}.tc-node:before,.tc-node:after{border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:-2px}.tc-node-icon{border-radius:4px;position:absolute;inset:0;overflow:hidden}.tc-node[data-ability] .tc-node-icon{border-radius:50%}.tc-node-icon img{object-fit:cover;width:100%;height:100%;transition:filter .2s;display:block}.tc-node[data-state=locked]{cursor:not-allowed}.tc-node[data-state=locked] img{filter:grayscale()brightness(.32)}.tc-node[data-state=available]{border-color:#f4efe880}.tc-node[data-state=ranked]{border-color:var(--tree)}.tc-node[data-state=ranked]:before{box-shadow:0 6px 16px -8px var(--tree)}.tc-node[data-state=maxed]{border-color:var(--color-amber)}.tc-node[data-state=maxed]:before{box-shadow:0 0 0 3px #f2a33a24, 0 6px 18px -8px var(--tree)}.tc-node[data-hl]:after{box-shadow:0 0 0 2px var(--color-plate), 0 0 0 4px var(--color-ink);inset:-5px}.tc-node:hover:not([aria-disabled=true]){border-color:var(--color-gold-title);transform:translateY(-1px)}.tc-rank{z-index:1;background:var(--color-plate);text-align:center;min-width:30px;height:18px;color:var(--color-ink-3);font-variant-numeric:tabular-nums;border:1px solid #d6be8c33;border-radius:9px;padding:0 5px;font-size:11px;font-weight:700;line-height:16px;position:absolute;bottom:-9px;left:50%;transform:translate(-50%)}.tc-node[data-state=ranked] .tc-rank{border-color:var(--tree);color:var(--tree)}.tc-node[data-state=maxed] .tc-rank{border-color:var(--color-amber);background:var(--color-amber);color:var(--color-on-amber)}.tc-node[data-state=available] .tc-rank{color:var(--color-ink-2);border-color:#f4efe84d}.tc-tip{--tw:min(300px, calc(var(--p) * 4.56));z-index:20;left:clamp(0px, calc(var(--p) * (.56 + var(--col) + .5) - var(--tw) / 2), calc(var(--p) * 4.56 - var(--tw)));width:var(--tw);border:1px solid color-mix(in srgb, var(--tree) 45%, var(--color-plate-line));background:color-mix(in srgb, black 30%, var(--color-plate));color:var(--color-ink-2);pointer-events:none;border-radius:4px;padding:10px 12px;font-size:13px;line-height:1.45;position:absolute;box-shadow:0 14px 32px -8px #000000d9}.tc-tip[data-side=below]{top:calc(var(--p) * (var(--row) + .84) + 16px)}.tc-tip[data-side=above]{top:calc(var(--p) * (var(--row) + .16) - 8px);transform:translateY(-100%)}.tc-tip p{margin:0}.tc-tip p+p{margin-top:5px}.tc-tip-name{font-family:var(--font-heading);color:var(--color-gold-title);font-size:15px;font-weight:700}.tc-tip-rank{color:var(--color-ink-3);font-size:12.5px}.tc-tip[data-state=ranked] .tc-tip-rank{color:var(--tree)}.tc-tip[data-state=maxed] .tc-tip-rank{color:var(--color-amber)}.tc-tip-spell{color:var(--color-ink-3);font-size:12.5px}.tc-tip-req{color:var(--color-danger)}.tc-tip-text{white-space:pre-line}.tc-tip-next{color:var(--color-ink-3)}.tc-tip-next>span{color:var(--color-amber);font-weight:700}.tc-tip-note{color:var(--color-ink-3);font-size:12px;font-style:italic}.tc-tip-hint{border-top:1px solid var(--color-plate-line);color:var(--color-ink-3);padding-top:5px;font-size:12px}.tc-order{gap:14px;padding:16px;display:grid}.tc-order-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px 20px;display:flex}.tc-h2{font-family:var(--font-heading);letter-spacing:.01em;color:var(--color-gold-title);margin:0;font-size:22px;font-weight:700}.tc-sub{max-width:62ch;color:var(--color-ink-3);margin:4px 0 0;font-size:13.5px}.tc-order-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tc-strip{grid-template-columns:repeat(51,minmax(0,1fr));gap:2px;margin-bottom:14px;display:grid}.tc-slot{background:#f4efe812;border-radius:2px;height:10px;position:relative}.tc-slot[data-filled]{background:var(--c)}.tc-slot[data-beyond]{opacity:.35}.tc-slot[data-tick]:after{content:attr(data-tick);color:var(--color-ink-3);font-variant-numeric:tabular-nums;font-size:10px;position:absolute;top:13px;left:50%;transform:translate(-50%)}.tc-checkpoints{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px;margin:0;display:grid}.tc-checkpoint{border:1px solid var(--color-plate-line);border-radius:4px;padding:8px 10px}.tc-checkpoint[data-near=true]{border-color:var(--color-amber-selected-line);background:var(--color-amber-selected-bg)}.tc-checkpoint dt{letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-3);font-size:11.5px;font-weight:600}.tc-checkpoint dd{color:var(--color-ink);margin:2px 0 0;font-size:15px;font-weight:700}.tc-checkpoint-note{color:var(--color-ink-3);font-size:12px;font-weight:400;display:block}.tc-steps,.tc-levels{margin:0;padding:0;list-style:none;display:grid}.tc-steps{gap:6px}.tc-step{border:1px solid var(--color-plate-line);border-radius:4px;grid-template-columns:74px 36px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:8px 10px;transition:border-color .15s;display:grid}.tc-step[data-hl]{border-color:color-mix(in srgb, var(--c) 60%, transparent);background:color-mix(in srgb, var(--c) 8%, transparent)}.tc-step[data-beyond]{opacity:.5}.tc-step-level{color:var(--color-gold-title);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.tc-step-icon{border:1px solid var(--c);border-radius:4px;width:36px;height:36px;display:block;overflow:hidden}.tc-step-icon[data-ability]{border-radius:50%}.tc-step-icon img{object-fit:cover;width:100%;height:100%;display:block}.tc-step-body{flex-direction:column;gap:2px;min-width:0;display:flex}.tc-step-name{color:var(--color-ink);font-size:14.5px;font-weight:600}.tc-step-meta{color:var(--color-ink-3);font-size:12.5px}.tc-tags{flex-wrap:wrap;gap:5px;margin-top:2px;display:flex}.tc-tag{color:var(--color-ink);background:#f4efe81a;border-radius:3px;padding:1px 7px;font-size:11px;font-weight:600}.tc-tag[data-kind=ability]{background:var(--color-amber);color:var(--color-on-amber)}.tc-tag[data-kind=tier]{background:color-mix(in srgb, var(--c) 16%, transparent);color:var(--c)}.tc-tag[data-kind=level]{color:var(--color-danger);background:0 0}.tc-pips{gap:3px;display:inline-flex}.tc-pips>span{background:#f4efe81f;border-radius:2px;width:8px;height:8px}.tc-pips>span[data-on=past]{background:color-mix(in srgb, var(--c) 45%, transparent)}.tc-pips>span[data-on=now]{background:var(--c)}.tc-step-move{gap:4px;display:flex}@media not (min-width:40rem){.tc-step{grid-template-columns:36px minmax(0,1fr) auto;gap:6px 10px}.tc-step-level{grid-column:1/-1}.tc-pips{display:none}}.tc-levels{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px 8px}.tc-level{border-left:3px solid var(--c,var(--color-plate-line));background:#f4efe808;border-radius:2px;align-items:baseline;gap:8px;padding:5px 8px;font-size:13px;display:flex}.tc-level[data-hl]{background:color-mix(in srgb, var(--c) 12%, transparent)}.tc-level[data-beyond]{opacity:.5}.tc-level-num{min-width:42px;color:var(--color-gold-title);font-variant-numeric:tabular-nums;font-weight:700}.tc-level-name{min-width:0;color:var(--color-ink-2);flex:1}.tc-level-rank{color:var(--color-ink-3);font-variant-numeric:tabular-nums;font-size:12px}@media (prefers-reduced-motion:reduce){.tc-node,.tc-node-icon img,.tc-chip,.tc-mini-btn,.tc-step{transition:none}.tc-node:hover:not([aria-disabled=true]){transform:none}}@media (forced-colors:active){.tc-node[data-state=ranked],.tc-node[data-state=maxed]{border-color:highlight}.tc-node[data-state=locked]{border-color:graytext}}
