@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.planner-page{--bg: #15161b;--bg-2: #1b1c22;--panel: #1d1e25;--panel-2: #232530;--panel-3: #252733;--border: #2b2d38;--border-soft: #323543;--text: #d7d9e2;--text-soft: #8f93a7;--text-dim: #6d7287;--accent: #af504f;--accent-soft: #4a2831;--button: #535987;color:var(--text);font-family:Inter,sans-serif}.planner-page *{box-sizing:border-box}.planner-page a{color:inherit;text-decoration:none}.planner-page button,.planner-page input,.planner-page select{font:inherit}.planner-state-screen{display:grid;place-items:center;min-height:60vh;color:var(--text);font-family:Inter,sans-serif}.planner-state-error{color:#ff6b6b}.topbar,.subnav{background:#111217;border-bottom:1px solid #20222b}.topbar-inner,.subnav-inner,.planner-page{width:min(960px,calc(100vw - 32px));margin:0 auto}.topbar-inner{display:flex;align-items:center;justify-content:space-between;min-height:36px}.logo-row{display:flex;align-items:center;gap:12px}.brand-mark{color:#d44d47;font-size:1.8rem;font-weight:700}.brand-name{font-size:.98rem;font-weight:700}.desktop-btn,.primary-action,.ghost-action,.icon-action,.planner-tab{border:0;cursor:pointer}.desktop-btn{height:30px;padding:0 14px;border-radius:4px;background:#4b5075;color:#fff;font-weight:600}.login-link{color:#6f7394;font-size:.9rem}.subnav-inner{display:flex;gap:18px;align-items:center;min-height:46px;justify-content:center}.subnav-link{color:#aaaaae;font-size:.93rem;padding:14px 0 13px;border-bottom:3px solid transparent}.subnav-link.active{color:#f1f1f2;border-bottom-color:var(--accent)}.planner-page{padding:20px 0 48px}.planner-header,.build-config-row,.planner-tabs,.planner-board,.class-picker-wrap{margin-bottom:16px}.planner-header,.build-config-row,.planner-tabs{display:flex;align-items:center;justify-content:space-between;gap:12px}.planner-title-row{display:flex;gap:18px;align-items:center}.class-crest{display:grid;place-items:center;width:72px;height:72px;border-radius:6px;background:linear-gradient(180deg,#4d1f57,#301335);color:#ccc4d8;font-size:1.4rem;font-weight:700}.planner-title-copy h1{margin:0;color:#d9b17a;font-size:1.15rem}.planner-title-copy p{margin:4px 0 0;font-size:.95rem;color:#ececf0}.planner-class-line{display:flex;align-items:center;gap:8px}.planner-class-caret{color:var(--text-soft)}.planner-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.ghost-action{min-height:40px;padding:0 8px;background:transparent;color:#ececf0}.ghost-action.danger{color:#d38181}.ghost-action:disabled{cursor:not-allowed;color:var(--text-dim)}.json-import-input{display:none}.json-build-status{margin:-6px 0 16px;color:var(--text-soft);font-size:.84rem;text-align:right}.primary-action{min-width:108px;height:40px;padding:0 16px;border-radius:6px;background:var(--button);color:#fff;font-weight:600}.build-name-group{display:flex;min-width:0;flex:1}.build-name-input,.planner-select,.season-select{height:42px;border:1px solid var(--border-soft);background:var(--panel);color:var(--text)}.build-name-input{flex:1;min-width:0;padding:0 16px;border-radius:4px 0 0 4px}.icon-action{width:42px;background:var(--panel);color:var(--text);border-top:1px solid var(--border-soft);border-right:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft)}.build-select-group{width:220px}.planner-select,.season-select{width:100%;padding:0 14px;border-radius:4px}.class-picker-wrap{padding:10px 0 2px}.class-picker{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}.class-btn{display:flex;align-items:center;gap:10px;padding:10px;min-height:58px;border:1px solid var(--border);border-radius:4px;background:#181920;color:var(--text-soft);text-align:left;cursor:pointer}.class-btn.active{background:#22242f;border-color:#4f5365;color:#f0f1f5}.class-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:4px;background:#252733;font-size:.8rem;font-weight:700}.class-copy{display:flex;flex-direction:column;min-width:0}.class-label{font-size:.8rem;font-weight:700}.class-role{margin-top:3px;font-size:.7rem;color:var(--text-dim)}.planner-tabs{justify-content:flex-start;gap:20px;border-bottom:1px solid #23252f}.planner-tab{padding:0 0 13px;background:transparent;color:#a8a7ab}.planner-tab.active{color:#f0f1f4;border-bottom:2px solid var(--accent)}.planner-tab.muted{color:#646876}.planner-board{background:var(--bg-2);border:1px solid #1f2027;border-radius:4px;padding:20px 18px 28px}.planner-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.board-heading,.board-section h2{margin:0;color:#bcbcc1;font-size:.96rem;font-weight:600}.planner-core{display:grid;grid-template-columns:184px minmax(0,1fr) 184px;gap:18px;align-items:start}.gear-rail{display:flex;flex-direction:column;gap:10px}.gear-slot{display:flex;align-items:center;gap:14px;min-height:70px}.gear-slot.mirrored{flex-direction:row-reverse;text-align:right}.gear-slot-icon{width:70px;height:70px;border-radius:4px;background:#23242b;border:1px solid #20222a}.gear-slot-copy{display:flex;flex-direction:column;gap:5px}.gear-slot-label{font-size:.85rem;color:#d0d1d8}.gear-slot-value{font-size:.82rem;color:#9094a8}.gear-slot-value.empty{color:#6e7488}.tree-stage{position:relative;min-height:760px;padding:46px 0 0}.tree-stage-ring{position:absolute;inset:54px 60px auto;height:480px;border-radius:50%;border:1px solid #2f313d;opacity:.5}.tree-stage-ring:before{content:"";position:absolute;inset:60px;border-radius:50%;border:6px solid #262834}.tree-stage-center{position:absolute;inset:50%;width:90px;height:90px;margin:-45px 0 0 -45px;display:grid;place-items:center}.center-gem{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:radial-gradient(circle at 30% 30%,#f0d273,#8c4d1f 72%);color:#551a12;font-weight:800;box-shadow:0 0 0 4px #2c2218}.orbit-node{position:absolute;left:50%;top:50%;width:54px;height:54px;margin:-27px 0 0 -27px;border-radius:50%;background:#242631;border:1px solid #2e313e;transform:rotate(var(--angle)) translateY(-135px);transform-origin:center}.stage-tree-wrap{position:relative;z-index:1;padding-top:350px}.skill-tree{display:flex;flex-direction:column;gap:28px}.skill-tier{background:transparent;border:0;box-shadow:none;padding:0}.tier-header{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center;margin-bottom:14px}.tier-gate{position:relative;display:grid;place-items:center;width:38px;height:38px}.tier-gate:before{content:"";position:absolute;inset:0;border-radius:999px;border:1px solid #464b5c;background:#1a1c24}.tier-gate-fill{position:absolute;left:50%;top:38px;width:2px;height:calc(100% + 54px);transform:translate(-50%);background:linear-gradient(180deg,#3b3f4e,#3b3f4e00)}.skill-tier:last-child .tier-gate-fill{display:none}.tier-gate.active:before{border-color:#8b7760;box-shadow:0 0 0 1px #8b77602e}.tier-gate-value{position:relative;z-index:1;font-size:.8rem;font-weight:700;color:#c9ccd8}.tier-name{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#bfc3d2}.tier-meta{display:block;margin-top:3px;font-size:.7rem;color:var(--text-dim)}.skill-row{display:flex;flex-wrap:wrap;gap:26px 28px;padding-left:58px}.skill-cluster{position:relative;width:92px}.skill-node{display:flex;flex-direction:column;align-items:center;gap:5px;padding:0}.skill-icon-btn,.upgrade-icon-btn{position:relative;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;border:1px solid #494e61;background:radial-gradient(circle at 34% 30%,rgba(125,132,156,.42),transparent 32%),radial-gradient(circle at 50% 38%,#3b4151,#191d28 60%,#111319);color:#dbdde6;cursor:pointer;box-shadow:inset 0 0 0 2px #0a0c12d1,0 10px 24px #00000047}.skill-icon-btn:before,.upgrade-icon-btn:before{content:"";position:absolute;inset:3px;border-radius:inherit;border:1px solid rgba(255,255,255,.08)}.skill-icon-btn:after,.upgrade-icon-btn:after{content:"";position:absolute;inset:14px;border-radius:9px;background:linear-gradient(135deg,rgba(255,255,255,.07),transparent),linear-gradient(315deg,#1c202b,#0f1117);transform:rotate(45deg);opacity:.95}.skill-node.selected .skill-icon-btn,.upgrade-node.active .upgrade-icon-btn{border-color:#cfb17c;box-shadow:inset 0 0 0 2px #0a0c12d1,0 0 0 2px #cfb17c24,0 10px 24px #00000057}.skill-node.synergy .skill-icon-btn{border-color:#6f86bf}.skill-copy{min-width:0;text-align:center}.skill-label{display:none}.skill-meta,.upgrade-label{font-size:.68rem;color:#7f8498}.skill-rank{display:flex;align-items:center;justify-content:center;min-height:22px}.rank-count{color:#9096ab;font-size:.76rem;letter-spacing:.02em}.rank-count.has-rank{color:#e7c590}.upgrade-branch{margin-top:4px;padding-top:10px}.upgrade-stem{width:2px;height:18px;margin:0 auto;background:#303240}.upgrade-row{display:flex;justify-content:center;gap:8px;align-items:flex-start}.upgrade-cluster{position:relative;width:38px}.upgrade-h-connector{position:absolute;top:18px;left:-9px;width:10px;height:2px;background:#303240}.upgrade-node.locked{opacity:.45}.upgrade-icon-btn{width:34px;height:34px;margin:0 auto 2px;font-size:.8rem}.upgrade-icon-btn:after{inset:9px;border-radius:5px}.skill-icon-inner,.upgrade-icon-inner{position:relative;z-index:1;font-size:.85rem;font-weight:700;letter-spacing:.04em}.upgrade-icon-inner{font-size:.7rem}.upgrade-rank{text-align:center;color:#81879b;font-size:.63rem}.upgrade-rank.active{color:#e7c590}.upgrade-label{display:none}.skill-tooltip{position:fixed;z-index:20;width:300px;padding:12px;border:1px solid #393c49;border-radius:6px;background:#14161d;box-shadow:0 18px 40px #00000073}.tooltip-name{color:#edeef3;font-weight:700;margin-bottom:6px}.tooltip-desc{color:#a2a6b8;font-size:.82rem;line-height:1.5}.planner-core{display:block}.tree-stage{position:relative;min-height:auto;padding:0}.skill-tree-shell{position:relative;min-height:760px;border:1px solid #252730;border-radius:6px;overflow:hidden;background:#111217}.skill-tree-shell:before,.skill-tree-shell:after{content:"";position:absolute;inset:0;pointer-events:none}.skill-tree-shell:before{display:none}.skill-tree-shell:after{display:none}.tree-points-card,.tree-search-box,.tree-zoom-controls{position:absolute;z-index:3}.tree-points-card{top:12px;left:12px;width:196px;padding:12px 14px;border:1px solid #303340;border-radius:4px;background:#14161cf5;box-shadow:none}.tree-points-spent{color:#aeb3c2;font-size:.82rem}.tree-points-title{margin-top:2px;color:#dfe2ea;font-size:.9rem;font-weight:700}.tree-points-value{display:flex;align-items:center;gap:10px;margin-top:6px;color:#d8b16f;font-size:1.4rem;font-weight:700}.tree-points-gem{width:16px;height:16px;transform:rotate(45deg);border:2px solid #bc8d3f;background:radial-gradient(circle at 35% 35%,#f7dd9d,#865d1d 72%)}.tree-search-box{top:12px;right:12px}.tree-search-input{width:220px;height:40px;padding:0 14px;border:1px solid #393b46;border-radius:4px;background:#08090ceb;color:#ececf1}.tree-search-input::placeholder{color:#85899d}.tree-zoom-controls{left:12px;top:50%;display:flex;flex-direction:column;gap:6px;transform:translateY(-50%)}.tree-zoom-controls button{width:30px;height:30px;border:1px solid #31343e;border-radius:4px;background:#0b0c0fe0;color:#f0f1f5;cursor:pointer}.skill-tree-viewport{position:relative;z-index:1;height:760px;overflow:auto;scrollbar-width:thin;scrollbar-color:#3b3f49 transparent}.skill-tree-canvas{position:relative;transform-origin:top left;isolation:isolate;background:#050607}.skill-tree-art-bg{position:absolute;inset:0;z-index:0;background-image:var(--tree-bg-image);background-repeat:repeat-y;background-position:top center;background-size:min(100%,2048px) auto;opacity:.5;pointer-events:none}.skill-tree-art-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 8%,rgba(142,48,44,.18),transparent 28%),linear-gradient(90deg,rgba(0,0,0,.38),transparent 18%,transparent 82%,rgba(0,0,0,.38));pointer-events:none}.skill-tree-svg{position:absolute;inset:0;z-index:1;width:100%;height:100%;overflow:visible}.tree-bg-ring{display:none}.tree-bg-ring.big,.tree-bg-ring.wide{stroke:#b4bacc17}.tree-trunk,.tree-branch,.tree-skill-link,.tree-upgrade-branch{fill:none;stroke-linecap:round}.tree-trunk{stroke:#6c718280;stroke-width:3}.tree-trunk.active{stroke:var(--tree-color, #b26565)}.tree-branch{stroke:#6c718275;stroke-width:2}.tree-branch.active{stroke:var(--tree-color, #b26565)}.tree-branch.synergy{stroke:color-mix(in srgb,var(--tree-color, #6889d7) 72%,#ffffff 12%)}.tree-skill-link{stroke:color-mix(in srgb,var(--tree-color, #8b94aa) 62%,transparent);stroke-width:2}.tree-skill-link.active{stroke:var(--tree-color, #8b94aa);stroke-width:3}.tree-upgrade-branch{stroke:#6c718280;stroke-width:2}.tree-upgrade-branch.active{stroke:var(--tree-color, #b26565)}.tier-halo{fill:none;stroke:#d2d6e014;stroke-width:1}.tier-halo.active{stroke:#9a22222e}.tree-tier-chip,.tree-tier-hub,.tree-tier-label,.tree-skill-node,.tree-skill-rank,.tree-upgrade-node,.tree-upgrade-rank{position:absolute;transform:translate(-50%,-50%)}.tree-tier-hub,.tree-tier-label,.tree-skill-node,.tree-skill-rank,.tree-upgrade-rank{z-index:2}.tree-tier-chip{display:flex;flex-direction:column;gap:2px;min-width:108px;padding:8px 10px;border:1px solid rgba(73,78,92,.56);border-radius:999px;background:#0f1013ad;color:#cfd2dd;font-size:.72rem}.tree-tier-chip span{font-weight:700;letter-spacing:.06em;text-transform:uppercase}.tree-tier-chip small{color:#8e93a7;font-size:.68rem}.tree-tier-chip.active{border-color:color-mix(in srgb,var(--tree-color, #a54242) 62%,transparent)}.tree-tier-hub{display:grid;place-items:center;width:54px;height:54px;border:1px solid #4b5060;border-radius:4px;background:linear-gradient(135deg,color-mix(in srgb,var(--tree-color, #6f768a) 26%,transparent),transparent 62%),#191b22;color:#d7dbeb;box-shadow:none;transform:translate(-50%,-50%)}.tree-tier-hub.unlocked{border-color:color-mix(in srgb,var(--tree-color, #626675) 58%,#626675)}.tree-tier-hub span{font-weight:700;letter-spacing:.08em}.tree-tier-hub.active{border-color:var(--tree-color, #b26565);box-shadow:0 0 0 2px color-mix(in srgb,var(--tree-color, #b26565) 24%,transparent)}.tree-tier-label{color:color-mix(in srgb,var(--tree-color, #aeb3c2) 58%,#dfe2ea);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.tree-skill-node,.tree-upgrade-node{display:grid;place-items:center;border:0;cursor:pointer}.tree-skill-node{width:58px;height:58px;padding:4px;border:1px solid #4b5060;border-radius:4px;background:linear-gradient(135deg,color-mix(in srgb,var(--tree-color, #4f8fe8) 22%,transparent),transparent 68%),#1b1e27;box-shadow:none}.tree-skill-node:before,.tree-upgrade-node:before{content:"";position:absolute;inset:5px;border:1px solid rgba(0,0,0,.6);pointer-events:none}.tree-skill-node.active{border-color:var(--tree-color, #b26565);box-shadow:0 0 0 2px color-mix(in srgb,var(--tree-color, #b26565) 28%,transparent)}.tree-skill-node.passive{border-style:dashed;background:linear-gradient(135deg,color-mix(in srgb,var(--tree-color, #8b94aa) 18%,transparent),transparent 64%),#1a1c23}.tree-skill-node.passive .tree-skill-art{background:radial-gradient(circle at 50% 44%,color-mix(in srgb,var(--tree-color, #8b94aa) 68%,#ffffff 6%),transparent 36%),linear-gradient(135deg,color-mix(in srgb,var(--tree-color, #8b94aa) 64%,#2d3240),#151720 78%);color:#f2f3f7}.tree-skill-node.child{width:34px;height:34px;padding:0;border:2px solid #545866;border-radius:4px;background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 52%),linear-gradient(315deg,#2a2d36,#14161b 70%);transform:translate(-50%,-50%) rotate(45deg)}.tree-skill-node.child:before{inset:4px}.tree-skill-node.child .tree-skill-art{background:transparent;font-size:.78rem;transform:rotate(-45deg)}.tree-skill-node.child.active{border-color:var(--tree-color, #8b94aa);box-shadow:0 0 0 2px color-mix(in srgb,var(--tree-color, #8b94aa) 24%,transparent)}.tree-skill-node.synergy{box-shadow:0 0 0 2px color-mix(in srgb,var(--tree-color, #486cc6) 52%,transparent),0 12px 18px #0000004d}.tree-skill-node.dimmed{opacity:.24}.tree-skill-node.matching{box-shadow:0 0 0 2px color-mix(in srgb,var(--tree-color, #6085e2) 74%,transparent),0 0 22px color-mix(in srgb,var(--tree-color, #6085e2) 32%,transparent)}.tree-skill-art{display:grid;place-items:center;width:100%;height:100%;border:0;color:#ecedf4;font-size:1.1rem;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.6);box-shadow:none}.tree-skill-art{background:radial-gradient(circle at 36% 30%,color-mix(in srgb,var(--tree-color, #4f8fe8) 88%,#ffffff 8%),transparent 34%),linear-gradient(135deg,var(--tree-color, #4f8fe8),color-mix(in srgb,var(--tree-color, #4f8fe8) 24%,#111217) 78%)}.tree-skill-rank,.tree-upgrade-rank{padding:2px 6px;border-radius:999px;background:#0a0a0ee6;color:#d7dae4;font-size:.86rem;font-weight:700}.tree-skill-rank.active,.tree-upgrade-rank.active{color:color-mix(in srgb,var(--tree-color, #fff0d1) 40%,#fff0d1)}.tree-upgrade-node{width:30px;height:30px;background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 52%),linear-gradient(315deg,#2a2d36,#14161b 70%);border:2px solid #545866;border-radius:4px;transform:translate(-50%,-50%) rotate(45deg);color:#d3d6e4}.tree-upgrade-node span{transform:rotate(-45deg);font-size:.74rem;font-weight:700}.tree-upgrade-node.active{border-color:var(--tree-color, #8a2022);box-shadow:0 0 0 2px color-mix(in srgb,var(--tree-color, #8a2022) 24%,transparent)}.tree-upgrade-node.locked{opacity:.32;cursor:not-allowed}.tree-link-outer,.tree-link-inner{fill:none;stroke-linecap:round;stroke-linejoin:round}.tree-link-outer{stroke:#09090ab8;stroke-width:7}.tree-link-outer.tier-spine{stroke:#0c0605db;stroke-width:14}.tree-link-inner{stroke:#585753b8;stroke-width:4;filter:drop-shadow(0 1px 1px rgba(0,0,0,.72))}.tree-link-inner.tier-spine{stroke:#8a1b16;stroke-width:9;filter:drop-shadow(0 0 4px rgba(202,24,18,.5)) drop-shadow(0 1px 1px rgba(0,0,0,.86))}.tree-link-inner.active{stroke:color-mix(in srgb,var(--tree-color, #b3564e) 72%,#e2d2a6);filter:drop-shadow(0 0 6px color-mix(in srgb,var(--tree-color, #b3564e) 46%,transparent))}.tree-skill-node.large,.tree-skill-node.diamond,.tree-skill-node.passive{overflow:visible;border:0;background:transparent}.tree-skill-node.large{width:72px;height:72px;border-radius:50%}.tree-skill-node.passive{width:52px;height:52px;border-radius:50%}.tree-skill-node.diamond{width:38px;height:38px;transform:translate(-50%,-50%)}.tree-skill-node.locked{cursor:not-allowed;opacity:.52}.tree-skill-node.available{opacity:.9}.tree-skill-node.large.active,.tree-skill-node.passive.active,.tree-skill-node.diamond.active{opacity:1;filter:drop-shadow(0 0 8px color-mix(in srgb,var(--tree-color, #b3564e) 55%,transparent))}.tree-skill-frame{position:absolute;left:50%;top:50%;z-index:0;background-repeat:no-repeat;transform:translate(-50%,-50%) scale(var(--tree-frame-scale, 1));transform-origin:center;pointer-events:none}.tree-skill-node.diamond .tree-skill-frame{transform:translate(-50%,-50%) scale(var(--tree-frame-scale, 1))}.tree-skill-node.passive .tree-skill-frame{opacity:.96}.tree-skill-node.large:before,.tree-skill-node.passive:before,.tree-skill-node.diamond:before{display:none}.tree-skill-node.large .tree-skill-art,.tree-skill-node.passive .tree-skill-art,.tree-skill-node.diamond .tree-skill-art{position:relative;z-index:2;width:100%;height:100%;border-radius:inherit;background-color:#242733;background-repeat:no-repeat;background-position:center;background-size:cover;box-shadow:inset 0 0 0 2px #000000b3,0 10px 18px #00000052}.tree-skill-img{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover;opacity:0;pointer-events:none}.tree-skill-glyph{position:relative;z-index:2}.tree-skill-art.icon-loaded .tree-skill-img{opacity:1}.tree-skill-art.icon-loaded .tree-skill-glyph{opacity:0}.tree-skill-node.diamond .tree-skill-art{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);border-radius:0;font-size:.74rem}.tree-skill-node.passive .tree-skill-art{font-size:.76rem}.tree-skill-node.large.active .tree-skill-art,.tree-skill-node.passive.active .tree-skill-art,.tree-skill-node.diamond.active .tree-skill-art{box-shadow:inset 0 0 0 2px #000000b8,0 0 0 2px color-mix(in srgb,var(--tree-color, #c3a85b) 34%,transparent),0 12px 20px #00000061}.tree-tier-hub{overflow:hidden;width:74px;height:74px;border:1px solid color-mix(in srgb,var(--tree-color, #6f768a) 38%,transparent);border-radius:50%;background-color:#1b1d24;background-repeat:no-repeat;background-position:center;background-size:contain;display:grid;place-items:center}.tree-tier-hub span{color:var(--tree-color, #d7d9e2);font-size:14px;font-weight:700;letter-spacing:.08em}.tree-tier-hub.locked{opacity:.52}.tree-tier-hub.active{filter:drop-shadow(0 0 10px color-mix(in srgb,var(--tree-color, #c3a85b) 44%,transparent))}.tree-tier-label{width:150px;text-align:center;text-shadow:0 1px 2px #000}.board-section{margin-top:18px;padding-top:18px;border-top:1px solid #282a33}.selected-skills-strip{display:flex;gap:14px;justify-content:center;padding-top:14px}.skill-card-slot{width:62px;height:62px;border:1px solid #262933;background:#181a20}.skill-card-slot.filled{display:flex;flex-direction:column;justify-content:flex-end;padding:8px;width:120px;height:72px;background:linear-gradient(180deg,#21232d,#171920)}.skill-card-name{font-size:.72rem;color:#d4d6df}.skill-card-rank{margin-top:4px;color:#b38c54;font-size:.78rem;font-weight:700}.shard-grid{width:290px;margin:18px auto 0;padding:10px;background:#20222b;border:1px solid #282b37;border-radius:4px}.shard-row{display:flex;gap:14px;justify-content:center;margin:8px 0}.shard-node{width:38px;height:38px;transform:rotate(45deg);border-radius:10px;border:1px solid #434757}.color-0{background:radial-gradient(circle,#e14ca4,#562049 70%)}.color-1{background:radial-gradient(circle,#df7b35,#543421 70%)}.color-2{background:radial-gradient(circle,#7b5ce5,#2e245b 70%)}.color-3{background:radial-gradient(circle,#cf394b,#551d23 70%)}.gear-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:14px}.gear-stat-card{padding:16px;background:#20222b;border:1px solid #272a35;border-radius:4px}.gear-stat-header{display:flex;align-items:center;gap:12px;margin-bottom:14px;color:#c5c6cd}.gear-stat-icon{width:28px;height:28px;border-radius:4px;background:#2c2f3b}.gear-stat-lines{display:flex;flex-direction:column;gap:8px}.war-plans-panel{display:flex;flex-direction:column;gap:18px}.sim-control-band{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.sim-field-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.sim-field{display:flex;flex-direction:column;gap:7px;min-width:0;color:var(--text-soft);font-size:.75rem;font-weight:700;text-transform:uppercase}.sim-field input,.sim-field select{width:100%;height:40px;border:1px solid var(--border-soft);border-radius:4px;background:#181a21;color:var(--text);padding:0 10px;text-transform:none;font-weight:500}.sim-field.compact{width:180px;text-transform:none}.sim-condition-grid{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.sim-toggle{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid var(--border-soft);border-radius:4px;background:#1a1c24;color:var(--text);font-size:.82rem}.sim-toggle input{width:15px;height:15px;accent-color:var(--accent)}.sim-action-row{display:flex;align-items:center;gap:12px}.sim-status,.sim-error{color:var(--text-soft);font-size:.86rem}.sim-error{color:#d38181}.paragon-solve-status{display:flex;align-items:center;gap:12px;min-height:54px;padding:12px 14px;border:1px solid rgba(201,160,99,.42);border-radius:4px;background:#c9a06314;color:var(--text-soft)}.solve-progress-metrics{display:grid;grid-template-columns:repeat(4,max-content);gap:8px;margin-left:auto}.solve-progress-metrics span{padding:5px 7px;border:1px solid var(--border-soft);border-radius:4px;background:#0000002e;color:var(--text);font-size:.78rem;white-space:nowrap}.paragon-solve-status strong{display:block;margin-bottom:2px;color:var(--text);font-size:.92rem}.paragon-solve-status span{font-size:.84rem}.paragon-solve-status.complete{border-color:#8fd2a757;background:#8fd2a714}.solve-spinner{width:18px;height:18px;flex:0 0 auto;border:2px solid rgba(201,160,99,.28);border-top-color:var(--accent);border-radius:50%;animation:solve-spin .8s linear infinite}.solve-dot{width:10px;height:10px;flex:0 0 auto;border-radius:50%;background:#8fd2a7;box-shadow:0 0 0 4px #8fd2a724}@keyframes solve-spin{to{transform:rotate(360deg)}}.paragon-solver-panel{display:flex;flex-direction:column;gap:18px}.paragon-control-band,.paragon-route-card,.paragon-explanations,.paragon-diagnostics{border:1px solid var(--border-soft);border-radius:4px;background:#151820}.paragon-control-band{display:grid;gap:16px;padding:16px}.paragon-solver-head{display:flex;align-items:end;justify-content:space-between;gap:16px}.paragon-solver-head h2,.paragon-explanations h2,.paragon-diagnostics h2{margin:0 0 4px;color:var(--accent);font-size:1rem}.paragon-solver-head p{margin:0;color:var(--text-soft);font-size:.88rem}.paragon-board-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.paragon-board-list .paragon-pool-heading{grid-column:1 / -1}.paragon-board-slot,.paragon-glyph-choice{display:grid;align-items:end;gap:10px;padding:12px;border:1px solid var(--border-soft);border-radius:4px;background:#1a1c24}.paragon-board-slot{grid-template-rows:auto 1fr auto;gap:8px}.paragon-board-info{display:grid;gap:4px;min-height:122px;padding:10px;background:#0000002e}.paragon-board-info strong{color:var(--text);font-size:.9rem}.paragon-board-info span{color:var(--accent);font-size:.86rem;font-weight:700}.paragon-board-info p{display:-webkit-box;margin:0;overflow:hidden;-webkit-line-clamp:4;-webkit-box-orient:vertical;color:var(--text-soft);font-size:.84rem;line-height:1.45}.paragon-board-slot .icon-action{justify-self:end;width:34px;height:30px;color:#d38181}.paragon-glyph-pool{display:grid;gap:10px;padding-top:4px}.paragon-glyph-search{max-width:360px}.paragon-pool-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.paragon-pool-heading h3{margin:0;color:var(--accent);font-size:.92rem}.paragon-pool-heading span{color:var(--text-soft);font-size:.82rem}.paragon-glyph-choice{grid-template-columns:minmax(220px,1fr) 120px auto}.paragon-board-viewer{border:1px solid #342222;border-radius:4px;background:radial-gradient(circle at 50% 45%,rgba(100,28,22,.12),transparent 42%),radial-gradient(circle at 22% 18%,rgba(255,255,255,.04),transparent 18%),linear-gradient(135deg,#111217,#18191f 46%,#111217)}.paragon-viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid rgba(120,34,30,.56);color:var(--text)}.paragon-viewer-toolbar>div{display:flex;align-items:center;gap:8px}.paragon-viewer-toolbar .ghost-action{min-width:34px;min-height:30px;padding:0 10px}.board-connection-strip{display:flex;gap:10px;padding:10px 12px;overflow-x:auto;border-bottom:1px solid rgba(120,34,30,.42);background:#00000029}.board-connection-item{display:flex;align-items:center;gap:10px;flex:0 0 auto;color:var(--text-soft)}.board-connection-item>div{min-width:190px;padding:8px 10px;border:1px solid var(--border-soft);border-radius:4px;background:#181a22}.board-connection-item strong,.board-connection-item span{display:block}.board-connection-item strong{color:var(--text);font-size:.84rem}.board-connection-item span{margin-top:3px;color:var(--text-soft);font-size:.78rem}.board-connection-item b{color:var(--accent);font-weight:800}.paragon-board-viewport{height:min(72vh,820px);min-height:520px;overflow:auto;overscroll-behavior:contain;background:radial-gradient(circle at 50% 45%,rgba(110,104,94,.05),transparent 28%),#111217}.paragon-board-canvas{position:relative;transform-origin:top left}.paragon-route-card{position:absolute;width:520px;height:520px;min-width:0;padding:10px;border-color:#78221eb8;border-radius:0;background:radial-gradient(circle at 50% 45%,rgba(220,208,180,.04),transparent 36%),#121318}.paragon-route-card header{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:8px}.paragon-route-card h3{margin:0;font-size:.98rem}.paragon-route-card header span,.glyph-status{color:var(--text-soft);font-size:.84rem}.glyph-status.active{color:#8fd2a7}.paragon-mini-board{display:block;width:100%;height:calc(100% - 76px);margin-top:10px;border:1px solid rgba(82,37,34,.72);border-radius:2px;background:radial-gradient(circle at 48% 42%,rgba(120,38,28,.08),transparent 30%),repeating-linear-gradient(135deg,rgba(255,255,255,.018) 0 1px,transparent 1px 9px),#07090c}.paragon-board-bg{fill:#101115}.glyph-radius{fill:#40704638;stroke:#96231eeb;stroke-width:3}.route-link{stroke:#ffd58b;stroke-width:9;stroke-linecap:round}.route-link-underlay{stroke:#ffb84e61;stroke-width:19}.paragon-node .node-shadow{fill:#0000008c;stroke:none}.paragon-node .node-plate{fill:#17191d;stroke:#2b2e34;stroke-width:1}.paragon-node .node-inner{fill:#202329;stroke:#ffffff0d;stroke-width:.8}.paragon-node.selected .node-shadow{fill:#ffd68b57}.paragon-node.selected .node-plate{fill:#9f612f;stroke:#ffe4ad;stroke-width:2.8;paint-order:stroke fill}.paragon-node.selected .node-inner{fill:#f0ac54;stroke:#fff6cfe0}.paragon-node:hover .node-plate{stroke:#f7e3b0;stroke-width:2.4}.paragon-node:hover .node-inner{filter:brightness(1.35)}.paragon-node.node-normal .node-plate{fill:#15171b}.paragon-node.node-normal .node-inner{fill:#1b1d22;opacity:.5}.paragon-node.node-dex .node-plate,.paragon-node.node-str .node-plate,.paragon-node.node-int .node-plate,.paragon-node.node-will .node-plate,.paragon-node.node-magic .node-plate{fill:#172538;stroke:#315070}.paragon-node.node-dex .node-inner,.paragon-node.node-str .node-inner,.paragon-node.node-int .node-inner,.paragon-node.node-will .node-inner,.paragon-node.node-magic .node-inner{fill:#24405e}.paragon-node.node-rare .node-plate{fill:#4c3715;stroke:#c7922c}.paragon-node.node-rare .node-inner{fill:#a66d20}.paragon-node.node-legendary .node-plate{fill:#5c1813;stroke:#d94838}.paragon-node.node-legendary .node-inner{fill:#b62c20}.paragon-node.node-socket .node-plate{fill:#28201b;stroke:#e7b154}.paragon-node.node-socket .node-inner{fill:#7b1715}.paragon-node.node-gate .node-plate,.paragon-node.node-start .node-plate{fill:#31383b;stroke:#aeb6ad}.paragon-node.node-gate .node-inner,.paragon-node.node-start .node-inner{fill:#646f69}.node-icon{fill:#ffd27b;stroke:#00000080;stroke-width:1}.socket-icon{fill:#b82420;stroke:#ffcf7a}.node-stat{fill:#d7e2f4;font-size:7px;font-weight:800;text-anchor:middle;pointer-events:none;text-shadow:0 1px 1px #000}.paragon-explanations,.paragon-diagnostics{padding:16px}.paragon-explanations ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.paragon-explanations li{display:grid;grid-template-columns:minmax(120px,1fr) 70px 110px minmax(160px,1.6fr);gap:10px;align-items:baseline;color:var(--text)}.paragon-explanations li span,.paragon-explanations li em,.paragon-diagnostics p{color:var(--text-soft);font-size:.86rem}.paragon-diagnostics p{margin:6px 0 0}.sim-empty-state{padding:32px 0;border-top:1px solid #282a33}.sim-empty-state h2,.sim-breakdown h2,.sim-note-list h2{margin:0 0 10px;color:#bcbcc1;font-size:.96rem;font-weight:600}.sim-empty-state p,.sim-note-list p{margin:0;color:var(--text-soft);font-size:.88rem}.sim-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.sim-metric{min-width:0;padding:14px;border:1px solid #272a35;border-radius:4px;background:#20222b}.sim-metric span{display:block;color:var(--text-soft);font-size:.74rem;font-weight:700;text-transform:uppercase}.sim-metric strong{display:block;margin-top:8px;color:#f0f1f4;font-size:1rem;overflow-wrap:anywhere}.sim-results-table-wrap{overflow-x:auto;border:1px solid #272a35;border-radius:4px}.sim-results-table{width:100%;border-collapse:collapse;min-width:720px}.sim-results-table th,.sim-results-table td{padding:12px;border-bottom:1px solid #282a33;text-align:left;font-size:.84rem}.sim-results-table th{color:var(--text-soft);font-size:.72rem;text-transform:uppercase}.sim-results-table tr:last-child td{border-bottom:0}.sim-breakdown{padding-top:2px}.sim-bucket-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sim-bucket-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:0 12px;border:1px solid #272a35;border-radius:4px;background:#1a1c24}.sim-bucket-row span{color:var(--text-soft);font-size:.82rem}.sim-bucket-row strong{color:#d9b17a;font-size:.86rem}.sim-notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.sim-note-list{padding-top:2px}.sim-note-list ul{margin:0;padding-left:18px;color:var(--text-soft);font-size:.84rem;line-height:1.5}.stat-line{display:grid;grid-template-columns:12px minmax(0,1fr) 12px;gap:10px;align-items:center;min-height:38px;padding:0 10px;border-radius:4px;background:#1a1c24}.stat-bullet,.stat-dot{width:10px;height:10px;border-radius:50%;background:#676d8d}.stat-label{color:#7b8092;font-size:.88rem}@media(max-width:980px){.class-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-page,.topbar-inner,.subnav-inner{width:min(100vw - 20px,960px)}.planner-header,.build-config-row{flex-direction:column;align-items:flex-start}.build-select-group{width:100%}.skill-tree-shell{min-height:700px}.skill-tree-viewport{height:700px}.tree-points-card{width:180px;padding:12px 14px}.tree-search-box{top:12px;left:206px;right:12px}.tree-search-input{width:100%}.gear-stats-grid,.sim-field-grid,.sim-summary-grid,.sim-bucket-list,.sim-notes-grid,.paragon-board-list,.paragon-board-slot,.paragon-glyph-choice,.paragon-explanations li{grid-template-columns:1fr}.sim-field.compact{width:100%}.paragon-solver-head{align-items:stretch;flex-direction:column}}
