
:root{--bg:#0c111b;--panel:#131b29;--panel2:#182335;--line:#2a3b55;--txt:#ecf3ff;--muted:#9fb0c8;--blue:#5bb8ff;--green:#77d68a;--orange:#ffab55;--gold:#ffd166;--pink:#ff76aa;--red:#ff8794;--shadow:0 18px 40px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#09101a,#0d1420 45%,#0a1018);color:var(--txt);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}button,input,select{font:inherit}.wrap{max-width:1580px;margin:auto;padding:28px}.hero{background:radial-gradient(circle at 85% 10%,rgba(91,184,255,.14),transparent 33%),linear-gradient(145deg,#172236,#101826);border:1px solid #283a54;border-radius:24px;padding:28px;box-shadow:var(--shadow)}
.kicker{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);font-weight:800}.hero h1{font-size:clamp(28px,4vw,50px);line-height:1;margin:10px 0 12px}.hero p{color:var(--muted);max-width:1100px;line-height:1.55;margin:0}.rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:20px}.rule{background:#0e1725;border:1px solid #253852;border-radius:14px;padding:12px;text-align:left;color:inherit;cursor:pointer;transition:.16s transform,.16s border-color,.16s background}.rule:hover{transform:translateY(-1px);border-color:#4f7196}.rule.active{border-color:#6dbfff;background:linear-gradient(145deg,rgba(91,184,255,.16),#0e1725);box-shadow:inset 0 0 0 1px rgba(91,184,255,.12)}.rule b{display:block;color:#fff;font-size:14px}.rule span{display:block;color:var(--muted);font-size:12px;line-height:1.35;margin-top:3px}
.topbar{position:sticky;top:0;z-index:20;margin:18px 0;padding:10px;background:rgba(12,17,27,.9);backdrop-filter:blur(12px);border:1px solid #26374d;border-radius:16px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;box-shadow:0 12px 30px rgba(0,0,0,.2)}.preset,.modebtn,.ghost{border:1px solid #334963;background:#152033;color:#c9d7eb;padding:9px 12px;border-radius:11px;cursor:pointer;font-weight:750}.preset.active,.modebtn.active{background:#eaf5ff;color:#0b1522;border-color:#eaf5ff}.budgetBox{display:flex;align-items:center;gap:7px;background:#0c1522;border:1px solid #334963;border-radius:11px;padding:5px 8px}.budgetBox input{width:64px;background:transparent;color:#fff;border:0;outline:0;font-weight:900;font-size:16px}.spacer{flex:1}.counter{font-weight:850;white-space:nowrap}.counter strong{color:var(--gold)}.counter.over strong{color:var(--red)}
.layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(340px,.75fr);gap:18px;align-items:start}.panel{background:#101826;border:1px solid #263952;border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.panelHead{padding:16px 18px;border-bottom:1px solid #263952;background:#121d2d}.panelHead h2{margin:0;font-size:20px}.panelHeadLine{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.buildCostSummary{display:inline-flex;gap:7px;align-items:center;font-size:11px;font-weight:900;color:#b9cce0}.buildCostSummary strong{color:#ffd166}.buildCostSummary .metaCostTotal{color:#ddc9ff}.panelHead p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.panelTitleRow{display:flex;align-items:center;gap:10px;flex-wrap:nowrap}.panelTitleRow h2{flex:0 0 auto}.panelTitleRow .qualityBadge{flex:0 0 auto}.panelHead>p{margin-top:6px}.qualityBadge{display:inline-flex;align-items:baseline;gap:6px;border:1px solid #324960;border-radius:999px;padding:7px 11px;font-size:13px;font-weight:950;line-height:1;background:#0c1624;color:#c8d5e4;white-space:nowrap}.qualityBadge small{font-size:10px;font-weight:700;opacity:.9}.qualityBadge.q0{border-color:#4b5563;color:#c3cad4;background:rgba(120,128,140,.08)}.qualityBadge.q1{border-color:#4f7f60;color:#b8ebb7;background:rgba(119,214,138,.08)}.qualityBadge.q2{border-color:#4e78a8;color:#b9d9ff;background:rgba(91,184,255,.08)}.qualityBadge.q3{border-color:#8f6540;color:#f0c29b;background:rgba(205,127,50,.09)}.qualityBadge.q4{border-color:#a9893f;color:#ffe08d;background:rgba(255,209,102,.09)}.qualityBadge.q5{border-color:#9a474d;color:#ffb0b6;background:rgba(255,135,148,.09)}.panelBody{padding:16px 18px}
.sticky{position:sticky;top:78px}.step{margin-bottom:18px}.stepTitle{display:flex;align-items:center;gap:9px;margin-bottom:9px}.stepNum{width:26px;height:26px;border-radius:9px;display:grid;place-items:center;background:#22344d;color:#dcecff;font-weight:900;font-size:12px}.stepTitle b{font-size:14px}.selectRow{display:grid;grid-template-columns:1fr auto;gap:8px}.selectRow select,.slot select,.search,.filters select,.buildName{width:100%;background:#0a1220;color:#eaf2ff;border:1px solid #334963;border-radius:12px;padding:10px 12px;outline:none}.hint{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.45}.tooltipTarget{cursor:help;text-decoration:underline dotted rgba(255,255,255,.28);text-underline-offset:3px}
.gearGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.slot{background:#0d1725;border:1px solid #29415e;border-radius:13px;padding:11px}.slotLabel{font-size:11px;font-weight:850;color:#a9bdd6;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px}.rankctl{display:flex;align-items:center;gap:6px;margin-top:8px}.rankctl button,.lvlctl button{width:29px;height:29px;border-radius:8px;border:1px solid #3a506d;background:#15243a;color:#fff;cursor:pointer;font-weight:900}.rankctl span,.lvlctl span{min-width:34px;text-align:center;font-size:12px;font-weight:850}.cost{margin-left:auto;color:var(--gold);font-size:11px;font-weight:850}
.catalogTools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.search{flex:1;min-width:240px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters select{width:auto}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.tab{border:1px solid #334963;background:#152033;color:#c9d7eb;padding:7px 10px;border-radius:10px;cursor:pointer;font-weight:750;font-size:12px}.tab.active{background:#dff1ff;color:#0b1522;border-color:#dff1ff}.tableWrap{overflow:auto;border:1px solid #253852;border-radius:14px}table{border-collapse:separate;border-spacing:0;width:100%;min-width:870px}th{position:sticky;top:0;z-index:2;background:#17243a;color:#bcd0e9;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:11px 10px;border-bottom:1px solid #30445f}td{padding:10px;border-bottom:1px solid #223247;font-size:12px;vertical-align:middle}tr:last-child td{border-bottom:0}tr.selected{background:#16263a}.name{font-weight:850;font-size:13px}.mini{font-size:11px;color:#9fb0c8;margin-top:3px;max-width:470px;line-height:1.35}.badge{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;border:1px solid #36506d;color:#bdd0e7;font-size:10px;white-space:nowrap}.path-Атака{border-color:#8d4650;color:#ffb2b9}.path-Защита{border-color:#477eb0;color:#a9d5ff}.path-Движение{border-color:#558d6a;color:#abedc0}.path-Лут{border-color:#ae8744;color:#ffdc9b}.path-Слияние{border-color:#895aa6;color:#ddb6ff}.addbtn{border:1px solid #36506d;background:#132136;color:#eaf4ff;border-radius:9px;padding:7px 9px;cursor:pointer;font-weight:850}.addbtn.on{background:#77d68a;color:#0d1a12;border-color:#77d68a}.lvlctl{display:flex;align-items:center;gap:3px}.muted{color:var(--muted)}
.summaryBlock{border:1px solid #2a3d55;background:#0d1725;border-radius:14px;padding:12px;margin-bottom:10px}.summaryTitle{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.summaryTitle b{font-size:13px}.summaryTitle span{font-size:11px;color:var(--muted)}.bar{height:9px;border-radius:99px;background:#1b2a3e;overflow:hidden}.bar>i{display:block;height:100%;width:0;background:linear-gradient(90deg,#5bb8ff,#77d68a);transition:.2s}.bar.over>i{background:linear-gradient(90deg,#ffab55,#ff8794)}.money{display:flex;justify-content:space-between;margin-top:7px;font-size:12px}.money strong{color:var(--gold)}.selectedList{display:flex;flex-direction:column;gap:6px;max-height:330px;overflow:auto;padding-right:3px}.selItem{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;border:1px solid #263d59;background:#0c1522;border-radius:10px;padding:8px}.selItem b{font-size:11px}.selItem small{display:block;color:#8fa4bd;font-size:10px;margin-top:2px}.selCost{font-size:11px;color:var(--gold);font-weight:850}.empty{color:#7f93ad;font-size:12px;padding:9px 2px}.checks{display:grid;grid-template-columns:1fr 1fr;gap:6px}.check{border:1px solid #2b3e56;border-radius:10px;padding:8px;font-size:11px;color:#aebfd4}.check.ok{border-color:#3f7850;color:#a8e8b7;background:rgba(119,214,138,.06)}.check.warn{border-color:#725f34;color:#f0d48f}.chainBox{font-size:11px;line-height:1.5;color:#c9d7e8}.chainBox .link{margin:4px 0;padding:6px 8px;border-left:2px solid #5bb8ff;background:#101d2d;border-radius:0 8px 8px 0}.finalLine{background:#08111c;border:1px solid #344a65;border-radius:12px;padding:10px;font:11px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:#cfe0f4;word-break:break-word;max-height:150px;overflow:auto}.buildShareActions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.copybtn{width:100%;margin:0;border:1px solid #45617e;background:#18304a;color:#eaf5ff;border-radius:11px;padding:9px;cursor:pointer;font-weight:850}.copybtn:hover{background:#20405f}.pastebtn{border-color:#6a5a35;background:#2a2113;color:#ffe2a2}.pastebtn:hover{background:#382b17}.copybtn.ok{border-color:#3f7850;background:#12301d;color:#b9edc5}.copybtn.err{border-color:#7c4650;background:#351820;color:#ffc1c8}.finalSummaryBlock .buildName{margin:8px 0 10px}.finalLine[contenteditable="true"]{outline:none}.finalLine[contenteditable="true"]:focus{border-color:#5f83aa;box-shadow:0 0 0 2px rgba(91,184,255,.08)}@media(max-width:520px){.buildShareActions{grid-template-columns:1fr}}
.extraGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.extraBox{border:1px solid #273c56;border-radius:12px;background:#0d1725;padding:10px}.extraBox label{font-size:11px;color:#aec0d6;display:block;margin-bottom:6px}.extraBox select{width:100%;background:#09121f;color:#e8f2ff;border:1px solid #334963;border-radius:9px;padding:8px}.notice{border:1px solid #66542b;background:rgba(255,209,102,.06);color:#e6cf91;border-radius:12px;padding:10px;font-size:11px;line-height:1.45;margin-top:10px}
.tip{position:fixed;z-index:1000;width:min(390px,calc(100vw - 24px));pointer-events:none;opacity:0;transform:translateY(5px);transition:opacity .12s,transform .12s;background:#09121f;border:1px solid #4b6788;border-radius:13px;box-shadow:0 18px 48px rgba(0,0,0,.5);padding:12px}.tip.show{opacity:1;transform:none}.tipTop{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.tip h3{font-size:14px;margin:0}.tipMeta{font-size:10px;color:#8fa7c3}.tipMini{font-weight:750;color:#d8e8fa;font-size:12px;margin:8px 0 5px}.tipDesc{font-size:11px;line-height:1.5;color:#aebfd4}.tipStars{color:#ffd166;font-size:11px}.footer{color:#7e91aa;font-size:11px;padding:22px 4px 40px;line-height:1.55}
@media(max-width:1150px){.layout{grid-template-columns:1fr}.sticky{position:relative;top:auto}.rules{grid-template-columns:repeat(2,1fr)}.gearGrid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:760px){.wrap{padding:12px}.hero{padding:20px}.rules{grid-template-columns:1fr}.gearGrid{grid-template-columns:1fr}.extraGrid{grid-template-columns:1fr}.checks{grid-template-columns:1fr}.topbar{top:0}.spacer{display:none}.counter{width:100%}.panelBody{padding:12px}.layout{gap:12px}.catalogTools{display:block}.search{margin-bottom:8px}.filters select{flex:1;min-width:130px}.filters{display:flex}.sticky{position:relative}}

/* V27.1 — meta skills, build assistant, combat math */
.metaNote{color:#cdbbff}.metaBadge{display:inline-flex;align-items:center;gap:5px;border:1px solid #6b55a1;background:rgba(137,90,166,.13);color:#ddc9ff;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:850}.skillGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.skillCard{border:1px solid #56447c;background:linear-gradient(145deg,rgba(137,90,166,.11),rgba(91,184,255,.035));border-radius:12px;padding:10px}.skillHead{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.skillName{font-size:12px;font-weight:900;color:#eadfff}.skillEffect{font-size:10px;color:#aebfd4;line-height:1.35;margin-top:4px;min-height:28px}.skillCtl{display:flex;align-items:center;gap:5px;margin-top:8px}.skillCtl button{width:27px;height:27px;border-radius:8px;border:1px solid #66518e;background:#1a2033;color:#fff;cursor:pointer;font-weight:900}.skillCtl span{min-width:34px;text-align:center;font-size:11px;font-weight:900}.metaTotal{margin-left:auto;font-size:10px;color:#d4c1ff}.selItem.meta{border-color:#594776;background:rgba(137,90,166,.08)}.slot.meta{border-color:#594776}.slotStats{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.slotStats span{font-size:9px;border:1px solid #314966;border-radius:999px;padding:3px 6px;color:#a9bed5}.sectionDivider{height:1px;background:#263952;margin:14px 0}.check{cursor:help;position:relative}.check b{text-decoration:underline dotted rgba(255,255,255,.18);text-underline-offset:3px}.assistantBox{margin-top:8px;border-top:1px solid #263952;padding-top:9px}.assistantTitle{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:7px}.assistantTitle b{font-size:11px}.recommendList{display:flex;flex-direction:column;gap:6px}.recommend{border:1px solid #2c4563;background:#0a1524;border-radius:10px;padding:8px;display:grid;grid-template-columns:1fr auto;gap:8px}.recommend b{font-size:11px}.recommend small{display:block;color:#8fa6c0;font-size:9px;line-height:1.35;margin-top:3px}.recommend button{border:1px solid #41617f;background:#17304b;color:#e9f4ff;border-radius:8px;padding:5px 8px;cursor:pointer;font-size:10px;font-weight:900}.flowGrid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.flowCell{border:1px solid #2b4059;background:#0c1623;border-radius:10px;padding:8px;min-width:0}.flowCell h5{margin:0 0 6px;font-size:9px;color:#8fa7c3;text-transform:uppercase;letter-spacing:.08em}.flowCell div{font-size:10px;line-height:1.38;color:#d5e0ef}.eventChips{display:flex;gap:4px;flex-wrap:wrap}.eventChip{border:1px solid #36506c;border-radius:999px;padding:3px 6px;font-size:9px;color:#bad0e7}.statsGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.statCard{border:1px solid #2a405a;background:#0b1624;border-radius:11px;padding:9px}.statCard b{display:block;font-size:18px;color:#fff}.statCard span{font-size:9px;color:#91a6bf;text-transform:uppercase;letter-spacing:.06em}.statCard small{display:block;margin-top:4px;color:#aebfd4;font-size:9px;line-height:1.3}.combatBox{border:1px solid #2d435e;background:#0a1421;border-radius:12px;padding:10px;margin-top:8px}.combatControls{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px}.combatControls label{font-size:9px;color:#a8bad0;display:flex;align-items:center;gap:5px}.combatControls input[type=number],.combatControls select{width:100%;background:#08111c;color:#e8f2ff;border:1px solid #334963;border-radius:8px;padding:6px;font-size:10px}.combatControls input[type=checkbox]{accent-color:#5bb8ff}.formula{font:9px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;color:#9fb3cc;background:#07101a;border:1px solid #22364e;border-radius:9px;padding:8px;margin-top:7px}.pipeline{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:7px}.pipe{border:1px solid #36506c;border-radius:9px;padding:5px 7px;font-size:9px;color:#d8e7f7}.arrow{color:#6684a4}.applied{margin-top:8px;font-size:9px;line-height:1.4;color:#9fb0c8}.applied b{color:#dce8f6}.linksScroll{max-height:260px;overflow:auto;padding-right:3px}.caution{color:#f2d48c}.recognized{color:#9be6aa}.manualBox{margin-top:7px;border-top:1px solid #263952;padding-top:7px}.manualGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.manualGrid label{font-size:9px;color:#8fa6c0}.manualGrid input{width:100%;margin-top:3px;background:#08111c;color:#fff;border:1px solid #334963;border-radius:7px;padding:5px}.tip.helpTip .tipMeta{color:#d5c3ff}.tip.helpTip .tipMini{color:#dfe9f6}.tip.helpTip .tipDesc{color:#aebfd4}.tooltipTarget.skill{color:#eadfff}.footer strong{color:#ccdced}
@media(max-width:1200px){.skillGrid{grid-template-columns:repeat(2,1fr)}.flowGrid{grid-template-columns:1fr 1fr}.statsGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.skillGrid{grid-template-columns:1fr}.statsGrid{grid-template-columns:1fr 1fr}.combatControls{grid-template-columns:1fr}.flowGrid{grid-template-columns:1fr}}



/* V27.2 — dynamic meta loadout + BP/LBP */
:root{--meta:#b594ff;--meta2:#7e62c6;--cyan:#71e7ff}
.hero p{max-width:1180px}.panelHead .formulaHint{font-size:10px;color:#8ea6c2;margin-top:5px}.metaSection{border:1px solid #4c3d70;background:linear-gradient(145deg,rgba(137,90,166,.10),rgba(91,184,255,.025));border-radius:14px;padding:12px;margin-bottom:10px}.sectionTop{display:flex;align-items:center;gap:8px;justify-content:space-between;margin-bottom:8px}.sectionTop b{font-size:12px}.sectionBP{font-size:11px;font-weight:900;color:#e1d6ff;border:1px solid #614d8b;border-radius:999px;padding:4px 8px;white-space:nowrap}.dynList{display:flex;flex-direction:column;gap:7px}.dynRow{border:1px solid #394a64;background:#0b1522;border-radius:11px;padding:8px}.dynRow.meta{border-color:#5c487f;background:rgba(137,90,166,.07)}.rowTop{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}.rowInfo{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.bpTag{display:inline-flex;align-items:center;border:1px solid #7c5eb3;background:rgba(181,148,255,.09);color:#e4d9ff;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:900}.lpTag{display:inline-flex;align-items:center;border:1px solid #7a6632;color:#ffe29b;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:900}.statTag{display:inline-flex;border:1px solid #304964;color:#abc2d9;border-radius:999px;padding:3px 6px;font-size:9px}.iconBtn{width:28px;height:28px;border:1px solid #435a74;background:#142238;color:#e6f0fb;border-radius:8px;cursor:pointer;font-weight:900}.removeBtn{border-color:#6a3e4a;color:#ffb7c0;background:#24141b}.addSlot{margin-top:8px;border:1px dashed #536a85;background:#0c1725;color:#cfe2f5;border-radius:10px;padding:8px 10px;cursor:pointer;font-size:11px;font-weight:850}.addSlot.metaAdd{border-color:#6d5597;color:#e2d6ff}.controlLine{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:7px}.controlGroup{display:inline-flex;align-items:center;gap:4px;border:1px solid #304761;border-radius:9px;padding:3px 4px;background:#0a1320}.controlGroup span{font-size:10px;font-weight:900;min-width:34px;text-align:center}.controlGroup button{width:25px;height:25px;border:1px solid #405775;background:#15243a;color:#fff;border-radius:7px;cursor:pointer;font-weight:900}.gearGroups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.gearGroup{border:1px solid #493b68;background:rgba(137,90,166,.045);border-radius:13px;padding:9px}.gearGroupTitle{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:11px;font-weight:900;color:#d9caff}.preBP,.lbpBox{border:1px solid #5a497d;background:radial-gradient(circle at 90% 10%,rgba(181,148,255,.13),transparent 30%),#0b1522;border-radius:14px;padding:12px;margin:12px 0}.lbpBox{border-color:#39728a;background:radial-gradient(circle at 90% 10%,rgba(113,231,255,.12),transparent 30%),#0a1621}.bpEquation{font:11px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;color:#cbd8e8;background:#07111c;border:1px solid #253b53;border-radius:9px;padding:8px;margin-top:8px}.bpBig{font-size:26px;font-weight:950;color:#fff}.bpBreakdown{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.bpBreakdown span{border:1px solid #38506c;border-radius:999px;padding:4px 7px;color:#b8cbe0;font-size:9px}.metaField{display:flex;align-items:center;gap:6px}.metaField input{width:74px;background:#09131f;color:#fff;border:1px solid #67528e;border-radius:9px;padding:6px 7px;font-weight:900}.picker{position:relative;min-width:0}.pickerBtn{width:100%;text-align:left;background:#09131f;color:#edf4ff;border:1px solid #3a526d;border-radius:9px;padding:8px 10px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meta .pickerBtn,.gearGroup .pickerBtn{border-color:#65508e}.pickerMenu{display:none;position:absolute;z-index:120;left:0;right:0;top:calc(100% + 5px);background:#09131f;border:1px solid #4b6685;border-radius:11px;box-shadow:0 18px 45px rgba(0,0,0,.48);padding:7px;min-width:310px;max-height:360px}.picker.open .pickerMenu{display:block}.pickerSearch{width:100%;background:#07101b;color:#eef5ff;border:1px solid #334b67;border-radius:8px;padding:7px 8px;margin-bottom:6px;outline:none}.pickerOpts{max-height:285px;overflow:auto}.pickerOpt{width:100%;display:block;text-align:left;border:0;border-bottom:1px solid #1c2e43;background:transparent;color:#e4effb;padding:7px 8px;cursor:pointer;border-radius:7px}.pickerOpt:hover{background:#17283b}.pickerOpt b{display:block;font-size:11px}.pickerOpt small{display:block;color:#8ea6c0;font-size:9px;line-height:1.3;margin-top:2px}.pickerEmpty{padding:10px;color:#7f94ad;font-size:10px}.skillPicked{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.skillPicked .dynRow{min-width:0}.skillChoose{display:grid;grid-template-columns:1fr auto;gap:7px;align-items:start;margin-top:8px}.skillChoose .addSlot{margin:0;height:36px}.extrasGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.extraCat{border:1px solid #314962;background:#0c1624;border-radius:12px;padding:9px}.extraCat h4{margin:0 0 7px;font-size:11px}.extraCat.silver{border-color:#6d7684}.extraCat.gold{border-color:#7b6636}.extraCat.curse{border-color:#694454}.extraList{display:flex;flex-direction:column;gap:7px}.extraCard{border:1px solid #324a65;background:#09131f;border-radius:9px;padding:7px}.extraCard .rowTop{grid-template-columns:minmax(0,1fr) auto}.extraCard b{font-size:10px}.statsCore{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.modColumns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.modCol{border:1px solid #2d435e;background:#0a1421;border-radius:11px;padding:9px}.modCol h4{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#91aac4;margin:0 0 7px}.modLine{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #1e3147;padding:5px 0;font-size:10px}.modLine:last-child{border-bottom:0}.modLine strong{color:#e7f2ff;text-align:right}.modLine.inactive strong{color:#65788d;font-weight:700}.modLine.inactive .stagePill{color:#60758b;border-color:#263d55}.modNotes{margin-top:7px;font-size:9px;line-height:1.45;color:#91a8c1}.abilityBP{color:#d6c7ff;font-weight:900}.mutedSmall{font-size:9px;color:#859bb4}.selectedList{max-height:420px}.selItem .selCost{display:flex;gap:4px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.summaryBP{margin-top:7px;display:flex;justify-content:space-between;font-size:10px;color:#9db2c9}.summaryBP b{color:#e2d5ff}.noMargin{margin:0}.ultColor{border-color:#65508e!important;background:rgba(137,90,166,.10)!important;color:#e8ddff!important}
@media(max-width:1200px){.gearGroups,.extrasGrid{grid-template-columns:1fr}.skillPicked{grid-template-columns:1fr}.modColumns{grid-template-columns:1fr}}
@media(max-width:760px){.statsCore{grid-template-columns:1fr}.pickerMenu{min-width:min(320px,calc(100vw - 48px))}.rowTop{grid-template-columns:1fr auto}}

/* V27.3 — mobile budget dock, base→artifact families, rarity, exact combat layers */
.topbar.budgetDock{position:sticky;top:0;z-index:80;margin:12px 0;padding:8px 10px;border-radius:13px;display:grid;grid-template-columns:auto 1fr;gap:8px 12px;align-items:center;background:rgba(10,16,26,.94);backdrop-filter:blur(14px);border:1px solid #30445e;box-shadow:0 10px 26px rgba(0,0,0,.24)}
.budgetDesktop{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.dockCounter{justify-self:end;font-size:12px;font-weight:850;white-space:nowrap}.dockCounter strong{color:var(--gold)}.dockProgress{grid-column:1/-1;height:6px;border-radius:999px;background:#1c2b3f;overflow:visible;position:relative}.dockProgress i{display:block;position:relative;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#5bb8ff,#77d68a);transition:.2s}.dockProgress i:after{content:"";position:absolute;right:-4px;top:50%;width:10px;height:10px;border-radius:50%;background:#eef7ff;transform:translateY(-50%);box-shadow:0 0 0 2px rgba(91,184,255,.25)}.dockProgress.over i{background:linear-gradient(90deg,#ffab55,#ff8794)}.budgetMobile{display:none}
.gearDetail{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.8fr);gap:8px;align-items:end;margin-top:7px}.gearStats{display:flex;gap:5px;flex-wrap:wrap}.artifactPickLabel{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#8ea5c0;margin:0 0 3px 2px}.artifactChoice .pickerBtn{font-size:10px;padding:7px 8px;border-color:#6d5597}.artifactChoice .pickerMenu{min-width:300px}.artifactChosen{color:#d9c8ff;font-weight:850}
.raritySelect{background:#0a1320;color:#efe7ff;border:1px solid #6f5797;border-radius:8px;padding:5px 7px;font-size:10px;font-weight:850}.rarityTag{display:inline-flex;border:1px solid #6b5592;border-radius:999px;padding:3px 6px;color:#dfd0ff;font-size:9px;font-weight:900}.rarityNote{color:#bda8ed}.ratingHead{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.ratingHead strong{font-size:16px;color:var(--gold);font-variant-numeric:tabular-nums}.ratingMetric{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.045);font-size:9px;color:#91a8c0}.ratingMetric:last-child{border-bottom:0}.ratingMetric b{color:#dcecff}.abstractRating{display:grid;grid-template-columns:1fr auto;gap:3px 10px;margin:9px 0 3px;padding:9px 10px;border:1px solid rgba(171,137,255,.35)!important;border-radius:9px;background:linear-gradient(135deg,rgba(111,78,178,.14),rgba(50,78,126,.08));color:#bca8ed}.abstractRating b{color:#e0d2ff!important;font-size:10px}.abstractRating small{grid-column:1/-1;color:#927fb6;font-size:8px;line-height:1.35}.defenseAbstract{background:linear-gradient(135deg,rgba(82,112,174,.16),rgba(89,72,147,.08));border-color:rgba(126,164,231,.34)!important}.combatPassportDisclosure{margin-top:9px;padding-top:7px;border-top:1px solid rgba(255,255,255,.07)}.combatPassportDisclosure summary{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;list-style:none;color:var(--orange);font-size:11px;font-weight:900;letter-spacing:.015em}.combatPassportDisclosure summary::-webkit-details-marker{display:none}.combatPassportDisclosure summary:before{content:'▸';color:var(--orange);font-size:12px;transition:transform .15s ease}.combatPassportDisclosure[open] summary:before{transform:rotate(90deg)}.combatPassportDisclosure summary span{flex:1}.combatPassportDisclosure summary b{min-width:22px;text-align:center;border:1px solid rgba(255,171,85,.42);border-radius:999px;padding:1px 5px;color:#ffc27f;background:rgba(255,171,85,.06)}.combatPassportBody{padding:8px 0 1px;display:flex;flex-direction:column;gap:6px;color:#96abc1;font-size:9px;line-height:1.45}.combatPassportRow{display:grid;grid-template-columns:auto 1fr;gap:7px;align-items:start}.combatPassportRow .stagePill{margin-left:0}.combatPassportRow b{color:#bfd1e4}.combatEmpty{font-size:10px;color:#70859d;padding:4px 0}.modGroupLabel{font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:#6f88a4;margin:7px 0 2px}.modFormula{margin-top:7px;padding:7px;border:1px solid #24394f;background:#07111c;border-radius:8px;font:9px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;color:#b9cce0}.stagePill{display:inline-flex;border:1px solid #304b68;border-radius:999px;padding:2px 5px;font-size:8px;color:#91acc7;margin-left:4px}.condition{color:#ffd99b}.slash{color:#738ba6;padding:0 4px}.summaryBlock.lpRemoved{display:none}.tableWrap table{min-width:980px}
@media(hover:none){.tooltipTarget{cursor:default;text-decoration:none}.tip{display:none!important}}
@media(max-width:760px){.topbar.budgetDock{margin:6px 0 10px;padding:7px 9px;grid-template-columns:1fr;border-radius:10px;gap:6px}.budgetDesktop,.dockCounter{display:none}.budgetMobile{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:900}.budgetMobile strong{color:var(--gold)}.dockProgress{grid-column:1}.wrap{padding-top:8px}.hero{padding:16px}.hero h1{font-size:30px}.gearDetail{grid-template-columns:1fr}.artifactChoice .pickerMenu{min-width:min(315px,calc(100vw - 48px))}.topbar{flex-wrap:nowrap}.pickerOpt{padding:9px 8px}.pickerOpt small{font-size:9px}.tableWrap table{min-width:930px}}

/* V27.5 — page switch, preset loader, multiplier BP */
.pageSwitch{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 12px}.pageSwitchBtn{border:1px solid #36506e;background:#111c2b;color:#bfd1e6;border-radius:11px;padding:8px 11px;font-weight:850;cursor:pointer}.pageSwitchBtn.active{background:#eaf5ff;color:#0c1522;border-color:#eaf5ff}.presetLoader{display:grid;grid-template-columns:auto minmax(260px,520px);gap:6px 10px;align-items:center;margin:0 0 16px;padding:10px 12px;border:1px solid #2b405a;border-radius:14px;background:rgba(7,15,25,.45)}.presetLoaderLabel{font-size:11px;font-weight:900;color:#9fc4ea;text-transform:uppercase;letter-spacing:.07em}.presetLoader select{width:100%;background:#091321;color:#eef5ff;border:1px solid #3a536f;border-radius:10px;padding:9px 10px}.presetLoaderDesc{grid-column:1/-1;font-size:10px;line-height:1.45;color:#8fa7c3}.skillMultTag{color:#d6c7ff;font-weight:900}.formulaAccent{color:#bfe8cc}
@media(max-width:760px){.presetLoader{grid-template-columns:1fr}.presetLoaderDesc{grid-column:auto}.pageSwitch{margin-top:8px}.pageSwitchBtn{flex:1;padding:8px 7px;font-size:11px}}

/* V28.2 — section totals, compact dock, reset */
.stepTitle .headerBP{margin-left:auto}.headerBP{font-size:11px;padding:5px 9px}.metaSection .sectionTop:only-child{margin-bottom:8px}
.topbar.budgetDock{grid-template-columns:auto minmax(0,1fr) auto;gap:7px 10px}.budgetDesktop{grid-column:1}.dockMetrics{grid-column:2/4;display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.dockMetric{display:inline-flex;align-items:center;gap:4px;border:1px solid #2f455f;background:#0b1624;border-radius:9px;padding:5px 7px;font-size:10px;font-weight:850;color:#9fb4cb;white-space:nowrap}.dockMetric strong{color:#eef5ff;font-variant-numeric:tabular-nums}.dockCounter{justify-self:auto;font-size:10px}.dockCounter strong{color:var(--gold)}.dockProgress{grid-column:1/3;height:5px;max-width:none}.dockReset{grid-column:3;grid-row:2;border:1px solid #5d4650;background:#21151b;color:#ffc3ca;border-radius:9px;padding:6px 10px;cursor:pointer;font-size:10px;font-weight:900;white-space:nowrap}.dockReset:hover{background:#2b1921}.budgetMobile{display:none!important}
@media(max-width:900px){.topbar.budgetDock{grid-template-columns:1fr auto}.budgetDesktop{grid-column:1/-1}.dockMetrics{grid-column:1/-1;justify-content:flex-start}.dockProgress{grid-column:1}.dockReset{grid-column:2;grid-row:auto}}
@media(max-width:760px){.topbar.budgetDock{grid-template-columns:1fr auto!important}.budgetDesktop{display:none!important}.dockMetrics{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.dockMetric{justify-content:space-between}.dockProgress{grid-column:1!important}.dockReset{grid-column:2}.stepTitle{align-items:flex-start}.stepTitle .headerBP{margin-left:auto}}

/* V28.2 — synchronized page header + build intelligence */
.presetLoader{margin:18px 0 16px}
.hero h1{min-height:1.05em}.hero p{min-height:3.1em}
.buildIntel{margin-top:0;border:1px solid #304861;background:#0b1522;border-radius:12px;padding:9px;display:grid;gap:7px}.buildIntelBlock .buildIntel{border:0;background:transparent;padding:0}.buildIntelBlock .summaryTitle{margin-bottom:10px}
.intelTop{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;color:#9fb4cb}.intelTop strong{color:#eef5ff;font-size:12px}
.intelCheckStrip{display:grid;gap:5px;margin-top:8px;padding:8px 0 1px;border-top:1px solid rgba(255,255,255,.055)}.intelCheckLabel{font-size:8px;color:#7890aa;text-transform:uppercase;letter-spacing:.055em}.intelCheckTags{display:flex;gap:5px;flex-wrap:wrap}.intelCheckTag{display:inline-flex;align-items:center;min-height:20px;border:1px solid #435471;background:rgba(115,139,178,.075);border-radius:999px;padding:3px 7px;color:#c8d9eb;font-size:8px;font-weight:850;line-height:1.2}.intelCheckTag b{color:#eef6ff;font-weight:950}.intelCheckTag.template{border-style:dashed;color:#748aa1;background:rgba(90,112,137,.035)}.intelCheckTag.template b{color:#8fa7bd}
.intelXP{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;align-items:center;font-size:9px;color:#8fa7c3}.intelXP strong{color:#dcecff;font-size:10px;font-variant-numeric:tabular-nums;text-align:right}
.rarityGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.rarityGrid>span{border:1px solid #2b4059;background:#0d1928;border-radius:8px;padding:5px;text-align:center}.rarityGrid small{display:block;font-size:8px;color:#8097b2}.rarityGrid b{display:block;margin-top:2px;font-size:10px;color:#dcecff;font-variant-numeric:tabular-nums}
.priceStrip{display:flex;gap:5px;flex-wrap:wrap}.priceStrip>span{flex:1 1 auto;border:1px solid #4f462a;background:rgba(255,209,102,.045);border-radius:8px;padding:5px 7px;font-size:8px;color:#a99c78;white-space:nowrap}.priceStrip strong{color:#ffd166;font-size:10px;font-variant-numeric:tabular-nums}.goldTag{display:inline-flex;align-items:center;border:1px solid #705d2e;color:#ffd166;border-radius:999px;padding:3px 6px;font-size:9px;font-weight:900;white-space:nowrap}.bpPriceCell{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.goldInline{color:#ffd166;font-size:9px;font-weight:850;white-space:nowrap}
@media(max-width:760px){.hero .kicker{min-height:2.45em}.hero p{min-height:9.3em}.intelTop{flex-wrap:wrap}.rarityGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.priceStrip>span{flex:1 1 30%}}

/* V28.2 — compact preset picker, selected-only catalog, cumulative skill values */
.presetBuildPicker{min-width:0}.presetBuildPicker .pickerMenu{min-width:min(560px,calc(100vw - 48px));max-height:420px}.presetBuildPicker .pickerOpts{max-height:335px}.presetOptTitle{display:flex!important;align-items:center;justify-content:space-between;gap:10px;font-size:10px!important}.presetOptTitle em{font-style:normal;color:var(--gold);font-size:9px;letter-spacing:.03em;white-space:nowrap}.presetBuildPicker .pickerOpt small{font-size:8px;line-height:1.35;margin-top:3px}.tab.selectedOnly{border-color:#3f7850;color:#9be6aa;min-width:34px;padding-left:9px;padding-right:9px}.tab.selectedOnly.active{background:#9be6aa;color:#0b1710;border-color:#9be6aa}.skillTotalValue{color:#dfe9f6;font-weight:800}.priceStrip.twoPrices{grid-template-columns:1fr 1fr}.catalogGold{color:var(--gold);font-weight:850;white-space:nowrap}.indirectNote{margin-top:5px;padding:6px 7px;border:1px solid #27405a;border-radius:8px;background:#091522;color:#9fb4cb;font-size:9px;line-height:1.4}
@media(max-width:760px){.presetBuildPicker .pickerMenu{min-width:min(360px,calc(100vw - 48px));left:0;right:auto;width:min(360px,calc(100vw - 48px))}.priceStrip.twoPrices{grid-template-columns:1fr 1fr}}

/* V28.2 — viewport-safe mobile pickers */
@media(max-width:760px){
  .pickerMenu,.presetBuildPicker .pickerMenu,.artifactChoice .pickerMenu{min-width:0!important;max-width:none!important;width:auto}
  .picker.mobileViewportOpen .pickerMenu{position:fixed!important;z-index:1600!important;left:12px;right:auto;top:auto;bottom:auto;transform:none!important;margin:0!important}
  .picker.mobileViewportOpen .pickerOpts{overflow:auto}
}

/* V28.2 — magic meta slots + expanded reference */
.gearGroups{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}
.magicGroup{border-color:#436985;background:linear-gradient(145deg,rgba(91,184,255,.075),rgba(137,90,166,.055))}
.magicSub{border-top:1px solid #29425c;padding-top:8px;margin-top:9px}.magicSub:first-of-type{border-top:0;padding-top:0;margin-top:0}
.magicKindTitle{display:flex;justify-content:space-between;gap:8px;align-items:center;color:#a9cbea;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.055em;margin-bottom:6px}
.magicKindTitle span:last-child{color:#d9caff}.magicRow .rowInfo{align-items:center}.magicRow .raritySelect{min-width:84px}.magicRow .pickerBtn{border-color:#456783}
.refGuide{padding:24px 4px 40px}.refGuideTitle{font-size:15px;font-weight:950;color:#d7e8fb;margin-bottom:10px}.refGuideGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.refCard{border:1px solid #263d57;background:#0c1623;border-radius:13px;padding:12px}.refCard h4{margin:0 0 7px;color:#b9d9f8;font-size:11px;text-transform:uppercase;letter-spacing:.065em}.refCard p{margin:6px 0;color:#91a7c0;font-size:10px;line-height:1.52}.refCard b{color:#dce9f7}.refGuideNote{margin-top:9px;border:1px solid #334a64;border-radius:11px;padding:10px;color:#8198b2;font-size:10px;line-height:1.5}
@media(max-width:1200px){.gearGroups{grid-template-columns:repeat(2,minmax(0,1fr))}.refGuideGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.gearGroups{grid-template-columns:1fr}.refGuideGrid{grid-template-columns:1fr}.magicGroup{min-width:0}.magicRow .controlLine{gap:4px}}

/* V28.6 — mobile information density + collapsible reference guide */
.check.bad{border-color:#7b414d;color:#ffadb8;background:rgba(255,118,132,.065)}
.physicalGearColumn,.magicGearColumn{min-width:0}.physicalGearColumn{display:flex;flex-direction:column;gap:9px}.magicGearColumn>.magicGroup{height:100%}
@media(min-width:901px){.gearGroups{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}}
@media(max-width:900px){.gearGroups{grid-template-columns:1fr}}

/* V28.6 mobile-only density rules */
.finalBuildName{margin-bottom:8px}
.refGuideTitle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:transparent;border:0;padding:0;color:#d7e8fb;text-align:left;font:inherit;font-size:15px;font-weight:950;margin-bottom:10px}
.refGuideToggleIcon{display:none;font-size:18px;line-height:1;color:#8fb2d7;transition:transform .16s ease}
@media(max-width:760px){
  .mobileDesktopInfo{display:none!important}
  .refGuide{padding-top:12px}
  .refGuideTitle{cursor:pointer;margin-bottom:0;padding:10px 2px;border-top:1px solid #263d57;border-bottom:1px solid #263d57}
  .refGuideToggleIcon{display:inline-block}
  .refGuide .refGuideGrid,.refGuide .refGuideNote{display:none}
  .refGuide.open .refGuideGrid{display:grid;margin-top:10px}
  .refGuide.open .refGuideNote{display:block}
  .refGuide.open .refGuideTitle{margin-bottom:0}
}

/* V28.6 FINAL — audit polish: neutral diagnostics, persistence, stricter synergy */
.check.info{border-color:#315b7a;color:#bfe1ff;background:rgba(91,184,255,.065)}
.dockActions{grid-column:3;grid-row:2;display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}
.dockActions .dockReset{grid-column:auto;grid-row:auto}
.dockSave{border:1px solid #36546f;background:#101d2b;color:#c9e5ff;border-radius:9px;padding:6px 9px;cursor:pointer;font-size:10px;font-weight:900;white-space:nowrap}
.dockSave:hover{background:#15283a}.dockSave.saved{border-color:#3e7257;color:#bff0cd;background:#10251a}
@media(max-width:900px){.dockActions{grid-column:2;grid-row:auto}.dockProgress{grid-column:1}}
@media(max-width:760px){.dockActions{grid-column:2}.dockSave{padding:6px 7px;font-size:9px}}

/* V31.5 FINAL — two-tier synergy hints + shareable build import/export */
.pickerOpt{position:relative}.pickerOptNameLine{display:flex!important;align-items:center;gap:9px;min-width:0}.pickerOptNameLine>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.synergyBar{display:none;margin-left:auto;flex:0 0 86px;width:86px;height:3px;border-radius:999px;background:rgba(255,171,85,.15);overflow:hidden}.synergyBar::before{content:"";display:block;height:100%;width:var(--syn-pct,0%);background:#ffab55;border-radius:999px;box-shadow:0 0 7px rgba(255,171,85,.42)}.synergyBar.on{display:block}.synergyBar.soft::before{opacity:.58;box-shadow:0 0 5px rgba(255,171,85,.24)}
.abilitySynRing{--syn-angle:0deg;--syn-alpha:0;display:inline-grid;place-items:center;width:31px;height:31px;border-radius:50%;background:conic-gradient(#ffab55 var(--syn-angle),rgba(255,171,85,.12) 0);padding:2px;vertical-align:middle;opacity:calc(.35 + var(--syn-alpha)*.65)}.abilitySynRing.noSyn{background:transparent;padding:0;opacity:1}.abilitySynRing.softSyn{filter:saturate(.72);opacity:.66}.abilitySynRing .addbtn{width:27px;height:27px;padding:0;border-radius:50%;display:grid;place-items:center;background:#132136}.abilitySynRing .addbtn.on{background:#77d68a;color:#0d1a12;border-color:#77d68a}.abilitySynRing:not(.noSyn) .addbtn{box-shadow:0 0 0 1px #0d1725 inset}
.refGuideToggleIcon{display:inline-block!important}.refGuide .refGuideGrid,.refGuide .refGuideNote{display:none}.refGuide.open .refGuideGrid{display:grid;margin-top:10px}.refGuide.open .refGuideNote{display:block}.refGuideTitle{cursor:pointer;margin-bottom:0;padding:10px 2px;border-top:1px solid #263d57;border-bottom:1px solid #263d57}.refGuide{padding-top:12px}
@media(min-width:901px){
 .tableWrap{overflow-x:hidden}.tableWrap table{min-width:0!important;width:100%;table-layout:fixed}.tableWrap th,.tableWrap td{padding-left:6px;padding-right:6px;font-size:11px}.tableWrap th{font-size:9px}.tableWrap .mini{max-width:none;font-size:10px}.tableWrap .name{font-size:12px}.tableWrap .badge{padding:3px 5px;font-size:9px;max-width:100%;overflow:hidden;text-overflow:ellipsis}
 .tableWrap th:nth-child(1){width:5%}.tableWrap th:nth-child(2){width:25%}.tableWrap th:nth-child(3){width:10%}.tableWrap th:nth-child(4){width:8%}.tableWrap th:nth-child(5){width:12%}.tableWrap th:nth-child(6){width:8%}.tableWrap th:nth-child(7){width:8%}.tableWrap th:nth-child(8){width:8%}.tableWrap th:nth-child(9){width:7%}.tableWrap th:nth-child(10){width:9%}
 .tableWrap td:nth-child(2){overflow-wrap:anywhere}.tableWrap td:nth-child(5){font-size:10px}
}
@media(max-width:760px){.synergyBar{flex-basis:66px;width:66px}}

/* V28.10 — compact desktop ability table, rating info, random generator, session history */
.heroActions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 13px}.randomBuildBtn{border:1px solid #b66d28;background:linear-gradient(145deg,#3a2413,#20180f);color:#ffd6a5;border-radius:11px;padding:9px 13px;font-weight:900;cursor:pointer}.randomBuildBtn:hover{border-color:#ef9a47;background:#432a15}.randomBuildBtn.saved{border-color:#3e7257;color:#bff0cd;background:#10251a}.generatorBudgets{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.generatorBudget{display:inline-flex;align-items:center;gap:3px;border:1px solid #3d5069;background:#0d1826;border-radius:10px;padding:3px 4px 3px 7px}.generatorBudget>span{font-size:9px;font-weight:950;color:#9fb5cc;letter-spacing:.05em}.generatorBudget button{width:25px;height:27px;border:1px solid #3d5571;background:#15243a;color:#eef6ff;border-radius:7px;cursor:pointer;font-weight:950;padding:0}.generatorBudget button:hover{background:#1d304a}.generatorBudget input{width:48px;height:27px;border:0;background:transparent;color:#fff;text-align:center;font-size:13px;font-weight:950;outline:none;-moz-appearance:textfield}.generatorBudget input::-webkit-outer-spin-button,.generatorBudget input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.generatorBudget.meta{border-color:#624d85;background:rgba(137,90,166,.07)}.generatorBudget.meta>span{color:#d7c3f4}.generatorBudget.meta button{border-color:#654f8b}.randomBuildHint{font-size:10px;color:#8fa7c3}.ratingInfo{display:inline-grid;place-items:center;width:17px;height:17px;border:1px solid #45617e;border-radius:50%;font-size:10px;font-weight:950;color:#a9d5ff;cursor:help;margin-left:2px}.modCol .modFormula{display:none!important}.combatMeters{margin-top:auto;padding-top:12px;border-top:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;gap:8px}.combatMetersTitle{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#718aa5}.combatMeter{display:flex;flex-direction:column;gap:4px}.combatMeterHead{display:flex;justify-content:space-between;gap:8px;align-items:baseline;font-size:9px;color:#93aac3}.combatMeterHead b{font-size:9px;color:#dceaff;font-variant-numeric:tabular-nums}.combatMeterTrack{height:6px;border-radius:999px;background:#192b40;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)}.combatMeterFill{display:block;height:100%;width:var(--meter-fill,0%);border-radius:999px;background:linear-gradient(90deg,#4a90c8,#74c8ff);box-shadow:0 0 7px rgba(91,184,255,.2)}.defenseMeters .combatMeterFill{background:linear-gradient(90deg,#557aa7,#91c7ff)}@media(min-width:761px){.modColumns{align-items:start}.modCol{display:flex;flex-direction:column;min-height:0}.modCol:not(.combatColEmpty){min-height:500px}.modCol>#attackMods,.modCol>#defenseMods{display:flex;flex-direction:column;flex:1}.modCol.combatColEmpty>#attackMods,.modCol.combatColEmpty>#defenseMods{flex:0}.modCol.combatColEmpty .combatEmpty{padding:1px 0 0;line-height:1.3}}@media(max-width:760px){.combatMeters{margin-top:12px}}
.savedBuildsPanel{margin:14px 0 18px;border:1px solid #2c415c;background:#0c1624;border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.savedBuildsHead{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:11px 13px;border-bottom:1px solid #283d57}.savedBuildsHead b{font-size:12px}.savedBuildsHead span{display:block;color:#8ea5bf;font-size:9px;margin-top:2px}.savedBuildsHeadActions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.savedBuildsHeadActions #savedBuildsCount{font-size:11px;font-weight:900;color:#dbe9f7;margin:0}.savedBuildsClearBtn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;border:1px solid #415a77;background:#12263b;color:#dbe9f7;font:900 14px/1 Arial,Helvetica,sans-serif;cursor:pointer;padding:0;transition:.15s background,.15s border-color,.15s color,.15s transform}.savedBuildsClearBtn:hover{background:#1b3550;border-color:#6a88a8;color:#fff;transform:scale(1.04)}.savedBuildsClearBtn:active{transform:scale(.96)}.savedBuildsClearBtn[hidden]{display:none!important}.savedBuildsScroll{overflow:auto}.savedBuildsTable{width:100%;min-width:1260px;border-collapse:collapse}.savedBuildsTable th,.savedBuildsTable td{padding:7px 8px;border-bottom:1px solid #1f3147;font-size:9px;vertical-align:top}.savedBuildsTable th{background:#132035;color:#91abc7;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.savedBuildsTable th button{border:0;background:transparent;color:#91abc7;font:inherit;font-weight:900;cursor:pointer;padding:0}.savedBuildsTable th button.active{color:#ffd166}.savedBuildsTable tr:last-child td{border-bottom:0}.savedBuildName{width:140px;background:#08121f;border:1px solid #334963;color:#e9f3ff;border-radius:7px;padding:5px 6px;font-size:9px}.savedLoadBtn{border:1px solid #3d5d7b;background:#12263b;color:#d9ecff;border-radius:7px;padding:5px 7px;font-size:9px;font-weight:900;cursor:pointer;white-space:nowrap}
@media(min-width:901px){.tableWrap table{min-width:0!important;width:100%;table-layout:fixed}.tableWrap th,.tableWrap td{padding-left:5px;padding-right:5px}.tableWrap th:nth-child(1){width:5%}.tableWrap th:nth-child(2){width:31%}.tableWrap th:nth-child(3){width:9%}.tableWrap th:nth-child(4){width:8%}.tableWrap th:nth-child(5){width:9%}.tableWrap th:nth-child(6){width:12%}.tableWrap th:nth-child(7){width:12%}.tableWrap th:nth-child(8){width:5%}.tableWrap th:nth-child(9){width:4.5%}.tableWrap th:nth-child(10){width:4.5%}.tableWrap td:nth-child(8),.tableWrap td:nth-child(9),.tableWrap td:nth-child(10),.tableWrap th:nth-child(8),.tableWrap th:nth-child(9),.tableWrap th:nth-child(10){text-align:center;padding-left:1px;padding-right:1px}.tableWrap .lvlctl{gap:2px;white-space:nowrap}.tableWrap .lvlctl button{width:24px;height:24px}.tableWrap .lvlctl span{min-width:28px}.tableWrap .raritySelect{width:92px;max-width:100%;padding:5px 4px}}
@media(max-width:760px){.heroActions{align-items:stretch}.randomBuildBtn{width:100%}.generatorBudgets{width:100%}.generatorBudget{flex:1 1 130px;justify-content:center}.randomBuildHint{width:100%;line-height:1.35}.savedBuildsPanel{margin:10px 0 12px}.savedBuildsHead{align-items:flex-start}.savedBuildsHeadActions{margin-left:auto;padding-top:1px}.savedBuildsTable{min-width:1180px}.qualityBadge{font-size:12px;padding:6px 10px}.qualityBadge small{font-size:9px}}

/* V31.5 FINAL — Wisdom XP visual meter + itemized gold tooltip */
.xpCostMeter{grid-column:1/-1;margin-top:3px}.xpCostMeter .combatMeterTrack{height:7px}.xpCostMeter .combatMeterFill{background:linear-gradient(90deg,#4a90c8,#74c8ff);box-shadow:0 0 7px rgba(91,184,255,.22)}
.priceStrip [data-price-help]{cursor:help}.priceTipList{display:flex;flex-direction:column;gap:5px;margin-top:8px}.priceTipRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:baseline;border-bottom:1px solid rgba(255,255,255,.055);padding:4px 0}.priceTipRow:last-child{border-bottom:0}.priceTipRow span{min-width:0;color:#dce9f7;font-size:11px;line-height:1.3}.priceTipRow small{color:#8097b2;font-size:9px}.priceTipRow b{color:#ffd166;font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums}.priceTipTotal{display:flex;justify-content:space-between;gap:12px;margin-top:8px;padding-top:7px;border-top:1px solid #324961;font-size:11px;color:#9fb4cb}.priceTipTotal b{color:#ffd166}

/* V31.5 FINAL — catalog synergy sorting + structural helper + ult→gear context hints */
.catalogSortBtn{appearance:none;border:0;background:transparent;color:inherit;font:inherit;font-weight:900;text-transform:inherit;letter-spacing:inherit;padding:0;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.catalogSortBtn::after{content:"↕";font-size:9px;opacity:.42}.catalogSortBtn.active{color:#ffbf73}.catalogSortBtn.active::after{content:"↓";opacity:1}.catalogSortBtn:hover{color:#ffd29b}.recommend small .structRole{color:#ffbf73}
.synergyLegend{margin-top:14px;max-width:1100px;border:1px solid rgba(255,171,85,.72);background:linear-gradient(135deg,rgba(255,171,85,.10),rgba(255,171,85,.035));border-radius:13px;padding:10px 12px;box-shadow:inset 0 0 0 1px rgba(255,171,85,.05)}.synergyLegendHead{display:flex;align-items:center;gap:7px;color:#ffd0a0;font-size:12px;font-weight:900;line-height:1}.synergyLegendMark{color:var(--orange);font-size:13px}.synergyLegendScale{position:relative;display:inline-block;width:76px;height:10px;margin-left:3px}.synergyLegendScale:before{content:"";position:absolute;left:0;right:0;top:4px;height:3px;border-radius:99px;background:#3a2b22}.synergyLegendScale i{position:absolute;left:0;top:4px;width:58px;height:3px;border-radius:99px;background:linear-gradient(90deg,#c96f2d,var(--orange))}.synergyLegendScale b{position:absolute;left:54px;top:1px;width:9px;height:9px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 2px rgba(255,171,85,.16)}.synergyLegendText{margin-top:6px;color:#c9b9aa;font-size:12px;line-height:1.4}@media(max-width:620px){.synergyLegend{padding:9px 10px}.synergyLegendText{font-size:11px}.synergyLegendScale{width:62px}.synergyLegendScale i{width:46px}.synergyLegendScale b{left:42px}}
/* V31.5 FINAL — compact disclosures + stage upgrade directories */
details.builderDisclosure,details.calcDisclosure,details.summaryDisclosure{min-width:0}
.builderDisclosure>summary,.calcDisclosure>summary,.summaryDisclosure>summary{list-style:none;cursor:pointer;user-select:none}
.builderDisclosure>summary::-webkit-details-marker,.calcDisclosure>summary::-webkit-details-marker,.summaryDisclosure>summary::-webkit-details-marker{display:none}
.builderDisclosureSummary:before,.calcDisclosureSummary>div:first-child>b:before,.summaryDisclosure>summary b:before{content:'▸';display:inline-block;margin-right:6px;color:var(--orange);font-size:11px;transform-origin:center;transition:transform .15s ease}
.builderDisclosure[open]>.builderDisclosureSummary:before,.calcDisclosure[open]>.calcDisclosureSummary>div:first-child>b:before,.summaryDisclosure[open]>summary b:before{transform:rotate(90deg)}
.builderDisclosureBody{padding-top:2px}.magicGroup.builderDisclosure{padding:0;overflow:hidden}.magicGroup.builderDisclosure>.gearGroupTitle{margin:0;padding:9px}.magicGroup.builderDisclosure[open]>.gearGroupTitle{margin-bottom:0;border-bottom:1px solid #29425c}.magicGroup.builderDisclosure>.builderDisclosureBody{padding:9px}
.calcDisclosure{padding:0!important;overflow:hidden}.calcDisclosure>.calcDisclosureSummary{margin:0;padding:11px 12px}.calcDisclosure[open]>.calcDisclosureSummary{border-bottom:1px solid rgba(255,255,255,.07)}.calcDisclosureBody{padding:10px 12px 12px}.calcDisclosureSummary .mutedSmall{margin-top:2px}.calcDisclosureSummary .bpBig{margin-left:auto}
.summaryDisclosure{padding:0!important;overflow:hidden}.summaryDisclosure>summary.summaryTitle{margin:0;padding:11px 12px}.summaryDisclosure[open]>summary.summaryTitle{border-bottom:1px solid #263a52}.summaryDisclosureBody{padding:10px 12px 12px}
.modStageDisclosure{border-bottom:1px solid #1e3147}.modStageDisclosure:last-of-type{border-bottom:0}.modStageDisclosure>summary{list-style:none;cursor:pointer}.modStageDisclosure>summary::-webkit-details-marker{display:none}.modStageDisclosure>.modLine{border-bottom:0}.modStageDisclosure>.modLine>span:first-child{display:flex;align-items:center;gap:3px;min-width:0}.stageHint{font-style:normal;color:#718aa5;font-size:9px;display:inline-block;transition:transform .15s ease;margin-left:1px}.modStageDisclosure[open] .stageHint{transform:rotate(90deg);color:var(--orange)}
.stageCandidateBody{margin:0 0 5px;padding:6px 7px;border:1px solid #263b52;border-radius:9px;background:#09131f;display:flex;flex-direction:column;gap:4px}.stageCandidateIntro{font-size:8px;color:#6f859e;line-height:1.35;margin-bottom:1px}.stageCandidateRow{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.9fr);gap:8px;align-items:center;padding:4px 0;border-top:1px solid rgba(255,255,255,.035)}.stageCandidateRow:first-of-type{border-top:0}.stageCandidateName{min-width:0}.stageCandidateName b{font-size:9px;color:#bdd0e5}.stageCandidateName small{display:block;margin-top:1px;color:#667d96;font-size:8px}.stageCandidateRow>strong{font-size:9px;text-align:right;color:#d9e7f5;font-weight:800}.stageCandidateRow.selected .stageCandidateName b{color:#9ee4ad}.stageCandidateRow.selected>strong{color:#bceec7}.stageCandidateMark{display:inline-block;min-width:10px;color:#6f89a5;margin-right:2px}.stageCandidateRow.selected .stageCandidateMark{color:#77d68a}.stageCandidateEmpty{font-size:9px;color:#657b93;padding:3px 0}
@media(max-width:760px){.stageCandidateRow{grid-template-columns:minmax(0,1fr);gap:2px}.stageCandidateRow>strong{text-align:left;padding-left:13px}.calcDisclosureSummary .bpBig{font-size:23px}}

.stageCandidateAdd{appearance:none;border:1px solid #49647e;border-radius:5px;background:#10243a;color:#b9d6f2;cursor:pointer;font:900 10px/14px Arial;padding:0;width:16px;height:16px;text-align:center;vertical-align:middle;transition:.14s background,.14s border-color,.14s color,.14s box-shadow}.stageCandidateAdd.directFormula{border-color:var(--orange);color:#ffd3a4;background:rgba(255,171,85,.07);box-shadow:inset 0 0 0 1px rgba(255,171,85,.08)}.stageCandidateAdd:hover,.stageCandidateAdd.directFormula:hover{border-color:#77d68a;color:#07120a;background:#77d68a;box-shadow:0 0 0 2px rgba(119,214,138,.14)}.stageCandidateRemove{appearance:none;border:0;background:transparent;color:#77d68a;cursor:pointer;font:900 12px/14px Arial;padding:0;width:16px;height:16px;text-align:center;vertical-align:middle;border-radius:5px;transition:.14s background,.14s color}.stageCandidateRemove:hover{background:rgba(119,214,138,.14);color:#a9efb5}.stageCandidateMark.selectedMark{color:#77d68a;font-weight:900}.stageCandidateMarkEmpty{visibility:hidden}.stageCandidateRow.blocked .stageCandidateName small{color:#53677b}.stageCandidateRow.blocked>strong{color:#8295aa}.stageCandidateRow.addable .stageCandidateName b{color:#c9d9e9}

/* V31.5 FINAL — denser selected build cards + desktop-expanded magic */
.selectedList{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;max-height:520px;overflow:auto;padding-right:3px;align-items:stretch;grid-auto-flow:row}
.selItem{position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) 36px;gap:7px;align-items:stretch;min-width:0;min-height:94px;border-radius:14px!important;padding:10px 9px 8px 11px!important;background:#0a1420!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.selItem.pathAttack{border-color:#8f4650!important;background:linear-gradient(145deg,rgba(160,55,66,.10),#0a1420)!important}
.selItem.pathDefense{border-color:#3f6f9d!important;background:linear-gradient(145deg,rgba(67,116,166,.10),#0a1420)!important}
.selItem.pathMovement{border-color:#447b60!important;background:linear-gradient(145deg,rgba(66,137,96,.09),#0a1420)!important}
.selItem.pathLoot{border-color:#8b7138!important;background:linear-gradient(145deg,rgba(163,128,47,.09),#0a1420)!important}
.selItem.pathFusion{border-color:#72549a!important;background:linear-gradient(145deg,rgba(126,82,170,.10),#0a1420)!important}
.selItem.pathNeutral{border-color:#354c65!important}
.selCardMain{min-width:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:5px}
.selCardTop{display:block;min-width:0;width:100%;padding:0}
.selCardTop b{display:block;font-size:11px;line-height:1.12;color:#f4f8ff;font-weight:900;white-space:normal;word-break:break-word;text-align:left;max-width:100%}
.selCardMeta{display:flex;flex-wrap:wrap;gap:3px;align-items:center;font-size:7.5px;line-height:1.1;color:#a9bbd0;text-align:left}
.selCardMeta .selCardType{color:#d9e5f2;font-weight:700}
.selCardMeta span:not(.selCardType){color:#c2d1df;font-weight:800}
.selCardMetaDot{color:#6d85a0}
.selCardStats{display:flex;gap:4px;flex-wrap:wrap;align-items:center;justify-content:flex-start;min-height:16px}
.selCardStats span{border:1px solid rgba(120,145,170,.24);border-radius:999px;padding:3px 6px;color:#93a9be;font-size:6.5px;font-weight:900;white-space:nowrap;text-transform:lowercase;letter-spacing:.02em;line-height:1}
.selCardStats:empty{display:none}
.selCardActions{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:6px;min-width:36px}
.selCardRemove,.selCardRankBtn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;border:1px solid currentColor;background:rgba(7,14,24,.28);font-size:11px;font-weight:900;box-shadow:none;line-height:1;padding:0}
.selCardRankBtn{color:#ffffff;border-color:rgba(255,255,255,.6)}
.selCardRankBtn:hover:not(:disabled){background:rgba(255,255,255,.08)}
.selCardRankBtn:disabled{opacity:.35;cursor:not-allowed}
.selCardRemove:hover{background:rgba(255,255,255,.05)}
.selItem.pathAttack .selCardRemove{color:#ff94a6}
.selItem.pathDefense .selCardRemove{color:#8ec7ff}
.selItem.pathMovement .selCardRemove{color:#7be2ab}
.selItem.pathLoot .selCardRemove{color:#ffd166}
.selItem.pathFusion .selCardRemove{color:#d8a2ff}
.selItem.pathNeutral .selCardRemove{color:#a8c2df}
.selCardFooter{display:none}
@media(min-width:901px){.selectedList{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:760px){.selectedList{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.selItem{min-height:92px;padding:10px 8px 8px 10px!important;grid-template-columns:minmax(0,1fr) 32px;gap:6px}.selCardActions{min-width:32px}.selCardRemove,.selCardRankBtn{width:28px;height:28px;border-radius:9px}.selCardTop b{font-size:10px}.selCardMeta{font-size:7px}.selCardStats span{font-size:6px;padding:3px 5px}}
@media(max-width:360px){.selectedList{gap:6px!important}.selItem{padding:9px 7px 7px 9px!important}.selCardTop b{font-size:9px}.selCardMeta{font-size:6.3px}}


/* V31.6 — meta/run color coding + collapsible summary blocks */
.metaStep .stepNum,.metaNum{background:linear-gradient(145deg,#7f406f,#c968a7);border:1px solid #dc82bc;color:#fff3fb;box-shadow:0 0 0 1px rgba(255,255,255,.03),0 8px 18px rgba(201,104,167,.16)}
.runStep .stepNum,.runNum{background:linear-gradient(145deg,#215f82,#6bb9ff);border:1px solid #79c5ff;color:#f2fbff;box-shadow:0 0 0 1px rgba(255,255,255,.03),0 8px 18px rgba(91,184,255,.16)}
.preBP{border-color:#8c5c89;background:radial-gradient(circle at 88% 10%,rgba(255,149,212,.20),transparent 34%),linear-gradient(145deg,rgba(142,75,122,.16),rgba(255,127,200,.05)),#0b1522}
.lbpBox{border-color:#4d8ab4;background:radial-gradient(circle at 88% 10%,rgba(113,231,255,.18),transparent 34%),linear-gradient(145deg,rgba(48,102,143,.16),rgba(91,184,255,.05)),#0a1621}
.collapsibleSummary.isCollapsed{padding-bottom:10px}
.collapsibleSummary.isCollapsed>:not(.summaryTitle){display:none}
.collapsibleSummary.isCollapsed .summaryTitle{margin-bottom:0}


/* BUILD DATABASE UI V5 */
.dbuiHub{margin:14px 0 18px;padding:0}
.dbuiOverviewFrame{padding:14px;border:1px solid transparent;border-radius:24px;background:linear-gradient(180deg,rgba(13,23,36,.98),rgba(8,16,27,.99)) padding-box,linear-gradient(135deg,#f7d568 0%,#e9b84f 28%,#ff9e4c 63%,#c88d47 100%) border-box;box-shadow:0 22px 60px rgba(0,0,0,.30),0 0 30px rgba(241,190,78,.06);margin-bottom:12px}
.dbuiTopGrid{display:grid;grid-template-columns:1.15fr .95fr;gap:12px;margin-bottom:12px}
.dbuiCard{border:1px solid rgba(241,196,92,.18);border-radius:18px;background:linear-gradient(180deg,rgba(16,29,45,.95),rgba(8,17,29,.98));padding:14px;min-width:0}
.dbuiLabel{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px;color:#f2dfad;font-size:11px;font-weight:900;letter-spacing:.065em;text-transform:uppercase}
.dbuiInlineLegend{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;border:1px solid rgba(245,204,106,.16);background:rgba(245,204,106,.04);color:#bda66f;font-size:9px;text-transform:none;letter-spacing:0}.dbuiInlineLegend i{width:9px;height:9px;border-radius:50%;display:inline-block}
.dbuiQualityLine{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px}
.dbuiQualityScore{font-size:30px;font-weight:950;color:#fff}
.dbuiQualityText{font-size:13px;color:#ffce94}
.dbuiSystem{color:#98acd0;font-size:12px;line-height:1.5}
.dbuiDna{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.dbuiDnaBar{position:relative;height:15px;border-radius:999px;background:rgba(255,255,255,.055);overflow:hidden;display:flex;flex:1 1 320px;min-width:220px;border:1px solid rgba(255,255,255,.075)}
.dbuiDnaSeg{height:100%}
.dbuiDnaEmpty{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.04),rgba(255,255,255,.01))}
.dbuiPathList{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:11px}
.dbuiPathCell{border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:9px;background:rgba(255,255,255,.022);min-width:0}
.dbuiPathCell small{display:block;color:#839ac0;font-size:9px;margin-bottom:3px;text-transform:uppercase;letter-spacing:.05em}
.dbuiPathCell b{display:block;color:#fff;font-size:15px}
.dbuiPathCell span{display:block;color:#91a8cf;font-size:10px;margin-top:2px}
.dbuiChips{display:flex;flex-wrap:wrap;gap:7px}
.dbuiChip{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);color:#edf4ff;font-size:11px;line-height:1.2}
.dbuiChip b{font-size:11px;font-weight:850;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dbuiChip small{font-size:9px;color:#94abd0;text-transform:uppercase;letter-spacing:.05em}
.dbuiTabs{display:flex;gap:7px;overflow:auto;padding:2px 0 1px}
.dbuiTab{appearance:none;border:1px solid rgba(110,170,255,.18);background:rgba(255,255,255,.025);color:#cfe0ff;font-weight:850;font-size:12px;padding:9px 14px;border-radius:999px;white-space:nowrap;cursor:pointer;transition:.16s}
.dbuiTab:hover{border-color:rgba(255,190,100,.42);color:#fff}
.dbuiTab.active{background:linear-gradient(135deg,rgba(47,94,170,.95),rgba(93,163,255,.18));border-color:#79bfff;color:#fff;box-shadow:0 9px 22px rgba(50,112,255,.14)}
.dbui-hidden{display:none!important}
.layout{grid-template-columns:minmax(0,1fr)!important}
.layout>.panel{width:100%;min-width:0}
.layout>.panel>.panelBody,.layout>.panel>.panelHead{min-width:0}
.randomBuildHint{display:none!important}
.dbuiQuickPreset{margin:0;min-width:min(520px,100%);flex:1 1 360px;padding:0!important;background:none!important;border:0!important}
.dbuiQuickPreset .presetLoaderLabel{font-size:9px;color:#a8b9d1;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}
.dbuiQuickPreset .presetLoaderDesc{display:none!important}
.dbuiQuickPreset .presetBuildPicker .pickerBtn{height:38px;border-color:#675d3a;background:linear-gradient(145deg,rgba(77,61,28,.24),rgba(14,23,36,.96));color:#ffe7ad;font-weight:850}
.dbuiQuickPreset .presetBuildPicker .pickerMenu{min-width:min(620px,calc(100vw - 28px));max-height:460px;border-color:#735f31}
.presetOptTitle .presetPathTag{display:inline-flex;margin-right:7px;padding:2px 6px;border-radius:999px;border:1px solid rgba(255,255,255,.1);font-size:8px;color:#a9bdd7;text-transform:uppercase;letter-spacing:.05em}
.presetOptTitle em{color:#ffd166!important}
.presetOptIdea{padding-left:0;color:#8fa6c3!important}
#baseBPDisclosure,#lbpDisclosure{margin-top:0;margin-bottom:14px}
.wrap[data-dbui-view="meta"] #baseBPDisclosure,.wrap[data-dbui-view="run"] #lbpDisclosure{box-shadow:0 12px 30px rgba(0,0,0,.16)}
@media(max-width:1100px){.dbuiTopGrid{grid-template-columns:1fr}.dbuiPathList{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important}.layout>.panel{grid-column:1!important}.gearGroups,.modColumns,.extrasGrid{min-width:0}.dbuiQuickPreset{flex-basis:100%;width:100%}}
@media(max-width:760px){.dbuiOverviewFrame{padding:10px;border-radius:18px}.dbuiCard{padding:11px;border-radius:15px}.dbuiPathList{grid-template-columns:repeat(2,minmax(0,1fr))}.dbuiQualityScore{font-size:24px}.dbuiTabs{gap:5px}.dbuiTab{padding:8px 11px;font-size:10px}.dbuiQuickPreset .presetBuildPicker .pickerMenu{min-width:0}.wrap[data-dbui-view="meta"] main.panel,.wrap[data-dbui-view="run"] main.panel{width:100%!important;max-width:100%!important;margin:0!important}.wrap[data-dbui-view="meta"] .panelBody,.wrap[data-dbui-view="run"] .panelBody{width:100%!important;box-sizing:border-box}.wrap[data-dbui-view="meta"] .step,.wrap[data-dbui-view="run"] .step{width:100%;min-width:0}.wrap[data-dbui-view="meta"] .gearGroups,.wrap[data-dbui-view="run"] .extrasGrid{width:100%;min-width:0}}


/* BUILD DATABASE UI V5 — compact combat hierarchy + symmetrical header */
.heroActions{display:grid!important;grid-template-columns:max-content max-content!important;align-items:stretch!important;gap:8px 10px!important;width:max-content!important;max-width:100%!important}
.heroActions>.randomBuildBtn{grid-column:1;grid-row:1;height:100%;min-height:38px}
.heroActions>.generatorBudgets{grid-column:2;grid-row:1;align-items:stretch}
.heroActions>.dbuiQuickPreset{grid-column:1/-1;grid-row:2;width:100%!important;min-width:0!important;max-width:none!important;flex:none!important;margin:0!important}
.dbuiQuickPreset .presetLoaderLabel{display:none!important}
.dbuiQuickPreset .presetBuildPicker{width:100%!important}
.dbuiQuickPreset .presetBuildPicker .pickerBtn{width:100%!important}
.combatDetailBlock{padding:12px;margin-bottom:10px}
.combatDetailBlock>.combatBlockHead{display:flex;align-items:center;gap:7px;margin:0 0 8px!important;padding:0 0 8px;border-bottom:1px solid #263a52;font-size:13px!important;color:#eef5ff!important;text-transform:none!important;letter-spacing:0!important}
.combatDetailBlock>.combatBlockHead strong{margin-left:auto;font-size:15px;color:#fff}
.combatDetailBlock>.modCol{border:0!important;background:transparent!important;border-radius:0!important;padding:0!important;min-height:0!important}
.combatDetailBlock>.modCol>#attackMods,.combatDetailBlock>.modCol>#defenseMods{display:flex;flex-direction:column}
#heroStatsBlock .summaryTitle{margin-bottom:8px}
#heroStatsBlock .statsCore{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#heroStatsBlock .statCard{min-width:0}
@media(max-width:900px){
  .heroActions{grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  .heroActions>.randomBuildBtn,.heroActions>.generatorBudgets,.heroActions>.dbuiQuickPreset{grid-column:1!important;grid-row:auto!important;width:100%!important}
  .heroActions>.generatorBudgets{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .heroActions>.generatorBudgets .generatorBudget{min-width:0;justify-content:space-between}
}
@media(max-width:760px){
  #heroStatsBlock .summaryTitle span{display:none}
  #heroStatsBlock .statsCore{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  #heroStatsBlock .statCard{padding:9px 6px!important;text-align:center}
  #heroStatsBlock .statCard span{font-size:8px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #heroStatsBlock .statCard b{font-size:20px!important;line-height:1.05;margin-top:3px}
  #heroStatsBlock .statCard small{display:none!important}
  .combatDetailBlock>.combatBlockHead{font-size:12px!important}
}


/* BUILD DATABASE UI V5 — overview wisdom placement + desktop header alignment */
@media(min-width:901px){
  .heroActions{grid-template-columns:minmax(0,1fr) auto!important;width:min(100%,940px)!important;max-width:940px!important}
  .heroActions>.randomBuildBtn{width:100%!important;min-width:0!important}
  .heroActions>.generatorBudgets{width:max-content!important;min-width:0!important}
  .heroActions>.dbuiQuickPreset{display:block!important;grid-template-columns:1fr!important;width:100%!important;max-width:none!important;box-sizing:border-box!important}
  .heroActions>.dbuiQuickPreset .presetBuildPicker{display:block!important;width:100%!important;max-width:none!important}
  .heroActions>.dbuiQuickPreset .picker{width:100%!important;max-width:none!important}
  .heroActions>.dbuiQuickPreset .pickerBtn{width:100%!important;max-width:none!important;box-sizing:border-box!important}
}



/* BUILD DATABASE UI V5 — interactive header, inspector, what-if preview */
.dbuiHoverHelp,.dbuiPreviewPop{position:fixed;z-index:4600;width:min(360px,calc(100vw - 24px));pointer-events:none;border:1px solid rgba(247,205,104,.38);border-radius:14px;background:linear-gradient(180deg,rgba(18,29,44,.985),rgba(7,14,24,.99));box-shadow:0 18px 48px rgba(0,0,0,.46),0 0 28px rgba(247,196,76,.07);padding:11px 12px;color:#dfeaff;opacity:0;transform:translateY(4px);transition:opacity .11s ease,transform .11s ease}
.dbuiHoverHelp.show,.dbuiPreviewPop.show{opacity:1;transform:none}
.dbuiHoverHelp b,.dbuiPreviewPop b{color:#fff}.dbuiHoverHelp h4,.dbuiPreviewPop h4{margin:0 0 6px;font-size:11px;color:#ffe2a0}.dbuiHoverHelp p,.dbuiPreviewPop p{margin:0;color:#9eb2cf;font-size:10px;line-height:1.48}.dbuiHoverHelp .helpMini{margin-top:6px;color:#738cae;font-size:9px}
.dbuiPreviewMetrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.dbuiPreviewMetric{border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.025);padding:7px}.dbuiPreviewMetric small{display:block;color:#7892b4;font-size:8px;text-transform:uppercase;letter-spacing:.06em}.dbuiPreviewMetric b{display:block;margin-top:2px;font-size:11px}.dbuiPreviewMetric .up{color:#91e2ae}.dbuiPreviewMetric .same{color:#8ba2bf}.dbuiPreviewMetric .down{color:#ff9ca8}
.dbuiInspector{position:fixed;z-index:4550;right:18px;top:82px;width:min(390px,calc(100vw - 36px));max-height:calc(100vh - 100px);overflow:auto;border:1px solid rgba(247,202,99,.35);border-radius:20px;background:radial-gradient(circle at 88% 2%,rgba(247,190,78,.10),transparent 24%),linear-gradient(180deg,rgba(16,29,45,.99),rgba(7,14,24,.995));box-shadow:0 28px 80px rgba(0,0,0,.54);transform:translateX(calc(100% + 40px));opacity:0;transition:transform .19s ease,opacity .19s ease}.dbuiInspector.open{transform:none;opacity:1}
.dbuiInspectorHead{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:15px 15px 12px;background:rgba(12,22,35,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.07)}.dbuiInspectorHead small{display:block;font-size:9px;color:#89a0c0;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.dbuiInspectorHead h3{margin:0;color:#fff;font-size:18px;line-height:1.15}.dbuiInspectorClose{width:30px;height:30px;flex:0 0 auto;border:1px solid #52647d;border-radius:9px;background:#101b2a;color:#dce8f8;font-size:18px;cursor:pointer}.dbuiInspectorBody{padding:14px}.dbuiInspectorTags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.dbuiInspectorTag{border:1px solid rgba(255,255,255,.10);border-radius:999px;padding:4px 7px;color:#a9bed9;font-size:9px}.dbuiInspectorSection{border-top:1px solid rgba(255,255,255,.07);padding-top:11px;margin-top:11px}.dbuiInspectorSection:first-child{border-top:0;padding-top:0;margin-top:0}.dbuiInspectorSection h4{margin:0 0 6px;color:#f0d598;font-size:10px;text-transform:uppercase;letter-spacing:.07em}.dbuiInspectorSection p{margin:0;color:#b3c3d8;font-size:11px;line-height:1.55}.dbuiInspectorFacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.dbuiInspectorFact{border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:7px 8px;background:rgba(255,255,255,.022)}.dbuiInspectorFact small{display:block;color:#758dad;font-size:8px;text-transform:uppercase}.dbuiInspectorFact b{display:block;color:#eaf2ff;font-size:11px;margin-top:2px}.dbuiInspectorRelations{display:flex;flex-direction:column;gap:5px}.dbuiInspectorRelation{border-left:2px solid #e3ad54;background:rgba(227,173,84,.045);border-radius:0 8px 8px 0;padding:6px 8px;color:#adbed4;font-size:10px;line-height:1.42}.dbuiInspectorHint{color:#7188a8!important;font-size:9px!important;margin-top:7px!important}
.tooltipTarget,[data-inspect-id],.dbuiChip{cursor:pointer}.dbuiChip:hover{border-color:rgba(247,202,99,.32);background:rgba(247,202,99,.045)}.dbuiPathCell,.dbuiDnaBar,#dbuiBadge,#dbuiSystem,.dockMetric{cursor:help}.dbuiPathCell:hover{border-color:rgba(247,202,99,.25);background:rgba(247,202,99,.035)}
.dbuiNarrativeMain{font-size:12px;color:#dbe8fa;line-height:1.5}.dbuiNarrativeMain b{color:#fff}.dbuiNarrativeSub{margin-top:6px;color:#879fbe;font-size:10px;line-height:1.48}.dbuiNarrativeLinks{margin-top:7px;color:#d5bc7d;font-size:10px;line-height:1.45}
@media(max-width:760px){.dbuiInspector{left:0;right:0;top:auto;bottom:0;width:100%;max-height:76vh;border-radius:20px 20px 0 0;transform:translateY(calc(100% + 30px));border-left:0;border-right:0;border-bottom:0}.dbuiInspector.open{transform:none}.dbuiInspectorHead{padding:13px 14px 11px}.dbuiInspectorBody{padding:12px 14px 18px}.dbuiHoverHelp,.dbuiPreviewPop{display:none!important}}

/* BUILD DATABASE UI V6 — approved overview: DNA, horizontal core, support */
.dbuiOverviewFrame{display:grid;gap:10px;padding:12px;border:1px solid #3c4b5f;border-radius:23px;background:linear-gradient(180deg,rgba(14,23,36,.99),rgba(7,14,24,.995)) padding-box,linear-gradient(135deg,#e7bd5d,#a67842 46%,#526983 100%) border-box}
.dbovHeader{display:grid;grid-template-columns:minmax(165px,.28fr) minmax(0,1fr);align-items:center;gap:22px;padding:9px 20px 7px}
.dbovHeader h2{margin:0;color:#ffe9b8;font-size:clamp(22px,2.2vw,34px);line-height:1.04;letter-spacing:.025em}
.dbovHeader .qualityBadge{width:min(790px,100%);justify-self:end;display:flex;align-items:baseline;justify-content:center;gap:15px;padding:13px 25px;border:2px solid #91684b;border-radius:999px;color:#efc5a6;background:rgba(48,34,35,.58);font-size:clamp(19px,2vw,31px);font-weight:950;line-height:1;letter-spacing:.02em;white-space:nowrap}
.dbovHeader .qualityBadge small{color:#f4c7a3;font-size:.66em;font-weight:800;letter-spacing:0;text-transform:none}
.dbovIdentity,.dbovCore,.dbovSupport{border:1px solid #3d5068;border-radius:16px;min-width:0}
.dbovLabel{color:#c4d8e9;font-size:9px;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.dbovIdentity{position:relative;display:grid;grid-template-columns:58px minmax(240px,.9fr) minmax(390px,1.35fr);align-items:center;gap:16px;min-height:126px;padding:15px 18px;overflow:hidden;border-color:#65495e;background:radial-gradient(circle at 3% 50%,rgba(255,135,148,.14),transparent 13rem),radial-gradient(circle at 84% 0%,rgba(181,148,255,.1),transparent 23rem),linear-gradient(145deg,rgba(36,21,31,.96),rgba(13,24,39,.99))}
.dbovIdentity::after{content:"";position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,#ffab55,#ff8794 35%,#b594ff 72%,transparent);opacity:.6}
.dbovDnaMark{position:relative;width:48px;height:48px;display:grid;place-items:center}
.dbovDnaMark::before,.dbovDnaMark::after{content:"";position:absolute;width:37px;height:9px;border:2px solid;border-color:#ffab55 transparent #b594ff;border-radius:50%;box-shadow:0 0 17px rgba(181,148,255,.14)}
.dbovDnaMark::before{transform:rotate(44deg)}.dbovDnaMark::after{transform:rotate(-44deg)}
.dbovDnaMark i{position:relative;z-index:1;width:13px;height:13px;border:3px solid #ffe7c4;border-radius:50%;background:#3c2020;box-shadow:0 0 15px rgba(255,171,85,.32)}
.dbovDnaCopy{min-width:0}.dbovDnaCopy h3{margin:4px 0 5px;color:#fff;font-size:clamp(18px,1.9vw,25px);line-height:1.08;letter-spacing:-.02em}
.dbovDnaCopy .dbuiSystem{color:#c8b7c0;font-size:11px;line-height:1.45}.dbovDnaCopy .dbuiSystem b{color:#fff}
.dbovDnaFormula{min-width:0;padding-left:18px;border-left:1px solid rgba(255,255,255,.11)}
.dbovFormulaTitle{margin-bottom:8px;color:#8096af;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.dbovFormulaLine{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap}
.dbovFormulaPart{min-width:0;cursor:pointer}.dbovFormulaPart small{display:block;margin-bottom:2px;color:#7d91a9;font-size:7px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.dbovFormulaPart b{display:block;color:#f1f5ff;font-size:11px;line-height:1.22}.dbovFormulaPart.ult b{color:#d8c8ff}.dbovFormulaPart.carrier b{color:#ffd09b}.dbovFormulaPart.skill b{color:#bce2ff}
.dbovFormulaTimes{color:#526a83;font-size:16px;font-weight:300}.dbovDnaFormula p{margin:7px 0 0;color:#a9bad0;font-size:9px;line-height:1.38}.dbovDnaFormula p b{color:#eef5ff}
.dbovCore{position:relative;overflow:hidden;border-color:#5794bd;background:radial-gradient(circle at 10% 0%,rgba(173,230,255,.2),transparent 27rem),radial-gradient(circle at 92% 100%,rgba(54,134,215,.2),transparent 30rem),linear-gradient(145deg,#173f5f,#102e4a 52%,#0b233a);box-shadow:inset 0 1px 0 rgba(224,246,255,.08)}
.dbovCoreHead{position:relative;z-index:3;padding:12px 15px 0}.dbovCoreHead .dbovLabel{color:#eef8ff;font-size:13px;letter-spacing:.055em}
.dbovCoreHead .dbuiDnaBar{width:100%;height:12px;min-width:0;flex:none;margin-top:8px;border-color:rgba(216,239,255,.3);background:rgba(4,25,42,.38);box-shadow:inset 0 1px 3px rgba(0,0,0,.38),0 0 18px rgba(116,198,255,.08)}.dbovCoreHead .dbuiDnaSeg{height:100%}.dbovCoreHead .dbuiDnaEmpty{display:block;width:100%;height:100%;background:linear-gradient(90deg,rgba(255,255,255,.035),rgba(255,255,255,.09),rgba(255,255,255,.035))}
.dbovDiagramViewport{position:relative;padding:14px 13px 15px;overflow:hidden}.dbovDiagramViewport::before{content:"";position:absolute;inset:7px 13px 8px;border-radius:13px;background-image:radial-gradient(circle,rgba(194,231,255,.18) 1px,transparent 1px);background-size:18px 18px;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);pointer-events:none}
.dbovDiagram{position:relative;z-index:2;display:grid;grid-template-columns:minmax(155px,1fr) minmax(175px,.9fr) minmax(180px,1.04fr) minmax(165px,.86fr) minmax(170px,1fr);align-items:center;width:100%;min-width:0}
.dbovDiagramEmpty{display:block}.dbovEmptyCore{display:grid;min-height:96px;place-items:center;border:1px dashed rgba(190,224,247,.34);border-radius:14px;color:#aac5d9;font-size:10px;text-align:center}
.dbovStep{--step-accent:#71e7ff;position:relative;display:grid;grid-template-rows:auto 1fr auto;min-width:0;min-height:128px;padding:12px 13px;border:1px solid #75a2c2;border-radius:14px;background:linear-gradient(150deg,rgba(26,65,94,.98),rgba(8,30,49,.98));box-shadow:0 13px 25px rgba(2,14,25,.23),inset 0 1px 0 rgba(221,244,255,.05);cursor:pointer}
.dbovStep::before{content:"";position:absolute;left:-1px;top:12px;bottom:12px;width:4px;border-radius:0 5px 5px 0;background:var(--step-accent);box-shadow:0 0 14px var(--step-accent)}
.dbovStep.s1{--step-accent:#ffab55;border-color:#a77851}.dbovStep.s2{--step-accent:#b594ff;border-color:#8571aa}.dbovStep.s3{--step-accent:#71e7ff;border-color:#5c9caa}
.dbovStepTop{display:flex;align-items:center;justify-content:space-between;gap:8px}.dbovStepNum{display:grid;width:28px;height:28px;place-items:center;border:1px solid var(--step-accent);border-radius:9px;color:#fff;font-size:11px;font-weight:950}.dbovStepPath{color:var(--step-accent);font-size:6.5px;font-weight:950;letter-spacing:.11em;text-transform:uppercase;text-align:right}
.dbovStep h4{align-self:center;margin:10px 0;color:#fff;font-size:clamp(15px,1.45vw,21px);line-height:1.02;letter-spacing:-.02em;overflow-wrap:anywhere}
.dbovStepSource{padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.dbovStepSource b{display:block;color:#e5eff7;font-size:9px;line-height:1.25;overflow-wrap:anywhere}.dbovStepSource small{display:block;margin-top:2px;color:#91abc0;font-size:7px;line-height:1.3}
.dbovEdge{position:relative;display:grid;height:128px;place-items:center;min-width:0}.dbovEdgeLine{position:absolute;left:1px;right:1px;top:50%;height:6px;border-radius:999px;background:linear-gradient(90deg,#5790b8,#b3d7ef);box-shadow:0 0 14px rgba(139,209,255,.25);transform:translateY(-50%)}.dbovEdgeLine::after{content:"";position:absolute;right:0;top:50%;width:14px;height:14px;border:4px solid #d1edff;border-width:4px 4px 0 0;transform:translateY(-50%) rotate(45deg)}
.dbovDiamond{position:relative;z-index:3;width:142px;height:88px;display:grid;place-items:center;background:#6e9fc1;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);filter:drop-shadow(0 10px 15px rgba(1,16,28,.32));cursor:pointer}.dbovDiamond::before{content:"";position:absolute;inset:2px;background:linear-gradient(145deg,#183c59,#0a2035);clip-path:inherit}.dbovDiamond.cyan{background:#64aebb}.dbovDiamond.gold{background:linear-gradient(135deg,#a07849,#7f6ba8)}
.dbovDiamondCopy{position:relative;z-index:2;width:104px;text-align:center}.dbovDiamondCopy b{display:block;color:#f1f8ff;font-size:9px;line-height:1.16;overflow-wrap:anywhere}.dbovDiamondCopy small{display:block;margin-top:3px;color:#9bb8cd;font-size:6.5px;line-height:1.2}
.dbovMutator{position:absolute;z-index:4;width:76px;height:44px;display:grid;place-items:center;background:#aa8750;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);filter:drop-shadow(0 7px 10px rgba(0,0,0,.26));cursor:pointer}.dbovMutator::before{content:"";position:absolute;inset:2px;background:linear-gradient(145deg,#372a1b,#151c2b);clip-path:inherit}.dbovMutator span{position:relative;z-index:2;width:56px;color:#ffe9ab;font-size:5.8px;font-weight:900;line-height:1.12;text-align:center;overflow-wrap:anywhere}.dbovMutator.top{top:-1px;left:4px}.dbovMutator.bottom{right:4px;bottom:-1px}.dbovMutator.top2{top:-1px;right:3px}.dbovMutator.bottom2{left:3px;bottom:-1px}
.dbovSupport{display:grid;grid-template-columns:minmax(185px,.55fr) minmax(0,2fr) auto;align-items:center;gap:10px;padding:10px 12px;border-color:#4f5966;background:radial-gradient(circle at 8% 0%,rgba(255,255,255,.055),transparent 18rem),linear-gradient(145deg,#293039,#1a2027 55%,#12171d);box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.dbovSupportHead .dbovLabel{color:#aeb8c2}.dbovSupportHead strong{display:block;margin-top:3px;color:#d0d6dd;font-size:10px;line-height:1.25}.dbovSupport .dbuiChips{gap:5px}.dbovSupport .dbuiChip{padding:5px 7px;border:1px solid #515d69;border-radius:8px;color:#bdc6cf;background:linear-gradient(145deg,rgba(56,65,75,.86),rgba(29,35,42,.92));font-size:8px;cursor:pointer}.dbovSupport .dbuiChip small{font-size:6.5px;color:#8995a2}.dbovSupport .dbuiChip b{font-size:8px;white-space:normal;overflow:visible}.dbovSupportMeta{color:#8c98a5;font-size:8px;text-align:right;white-space:nowrap}
@media(max-width:900px){.dbovIdentity{grid-template-columns:48px minmax(0,1fr)}.dbovDnaFormula{grid-column:1/-1;padding:10px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.1)}}
@media(max-width:980px) and (min-width:761px){.dbovDiagramViewport{overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-color:#6c9cbd rgba(7,28,45,.46);scrollbar-width:thin;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.dbovDiagramViewport::before{display:none}.dbovDiagram{width:max-content;min-width:100%;grid-template-columns:205px 168px 214px 162px 214px}.dbovStep,.dbovEdge{scroll-snap-align:center}}
@media(max-width:760px){.dbuiOverviewFrame{padding:8px;border-radius:18px}.dbovHeader{grid-template-columns:minmax(82px,.28fr) minmax(0,1fr);gap:8px;padding:7px 5px}.dbovHeader h2{font-size:clamp(14px,4.8vw,20px)}.dbovHeader .qualityBadge{gap:5px;padding:9px 8px;border-width:1px;font-size:clamp(12px,3.8vw,17px)}.dbovHeader .qualityBadge small{font-size:.63em}.dbovIdentity{grid-template-columns:38px minmax(0,1fr);gap:8px;min-height:0;padding:12px 11px}.dbovDnaMark{width:34px;height:34px}.dbovDnaMark::before,.dbovDnaMark::after{width:28px;height:7px}.dbovDnaMark i{width:10px;height:10px;border-width:2px}.dbovDnaCopy h3{font-size:17px}.dbovDnaCopy .dbuiSystem{font-size:9px}.dbovDnaFormula{padding-top:9px}.dbovFormulaLine{gap:7px}.dbovFormulaPart b{font-size:9px}.dbovDnaFormula p{font-size:8px}.dbovCoreHead{padding:10px 11px 0}.dbovCoreHead .dbovLabel{font-size:12px}.dbovDiagramViewport{padding:12px 9px 13px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-color:#6c9cbd rgba(7,28,45,.46);scrollbar-width:thin;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.dbovDiagramViewport::-webkit-scrollbar{height:6px}.dbovDiagramViewport::-webkit-scrollbar-track{background:rgba(7,28,45,.46);border-radius:999px}.dbovDiagramViewport::-webkit-scrollbar-thumb{background:#6c9cbd;border-radius:999px}.dbovDiagramViewport::before{display:none}.dbovDiagram{width:max-content;min-width:100%;grid-template-columns:205px 168px 214px 162px 214px}.dbovDiagramEmpty{display:block;width:100%}.dbovStep{min-height:124px;padding:11px 12px;scroll-snap-align:center}.dbovStep h4{font-size:17px}.dbovEdge{height:124px;scroll-snap-align:center}.dbovDiamond{width:132px;height:82px}.dbovDiamondCopy{width:96px}.dbovDiamondCopy b{font-size:8.5px}.dbovMutator{width:70px;height:40px}.dbovMutator span{width:51px;font-size:5.3px}.dbovSupport{grid-template-columns:1fr;gap:7px;padding:9px}.dbovSupportMeta{display:none}.dbovSupport .dbuiChips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.dbovSupport .dbuiChip{min-width:0;overflow:hidden}.dbovSupport .dbuiChip b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(max-width:390px){.dbovHeader .qualityBadge{padding-inline:6px}.dbovHeader .qualityBadge small{letter-spacing:-.015em}.dbovDiagram{grid-template-columns:194px 162px 204px 156px 204px}.dbovStep h4{font-size:16px}.dbovDiamond{width:126px;height:78px}.dbovMutator{width:66px;height:38px}}
/* V11 — event-first core, compact Build DNA, compact desktop LP controls */
.savedBuildLoadCell,.savedLoadHead{width:1%;white-space:nowrap}.savedBuildLoadCell{vertical-align:middle!important}.savedBuildsTable th:nth-child(2),.savedBuildsTable td:nth-child(2){min-width:170px}
@media(min-width:901px){.budgetDesktop{gap:4px}.budgetDesktop>.muted{font-size:8px!important}.budgetDesktop .preset{min-width:28px;height:27px;padding:3px 7px;border-radius:8px;font-size:9px}.budgetDesktop .budgetBox{height:27px;gap:3px;padding:3px 6px;border-radius:8px}.budgetDesktop .budgetBox input{width:38px;font-size:10px}.budgetDesktop .budgetBox .muted{font-size:8px}}

/* V11: rectangles are events, large diamonds are converters, small diamonds are contributors. */
.dbovStepPath{max-width:92px}
.dbovStep.event-stage{background:linear-gradient(150deg,rgba(24,72,104,.99),rgba(7,29,48,.99))}
.dbovStep.event-stage.s2{--step-accent:#8cc8ff;border-color:#6f96bd}
.dbovStep.event-stage.s3{--step-accent:#70f0d0;border-color:#599d97}
.dbovStep.event-stage h4{hyphens:auto;text-wrap:balance}
.dbovDiamond.major-spec{background:linear-gradient(135deg,#ffbb67,#a76f4d 43%,#7f6ba8)}
.dbovDiamond.major-book{background:linear-gradient(135deg,#b690ff,#568fb7)}
.dbovDiamond.major-peak{background:linear-gradient(135deg,#ffdc78,#d28855 48%,#8c5fb5)}
.dbovDiamond.major-class{background:linear-gradient(135deg,#70e8cf,#4f82b7)}
.dbovDiamondCopy em{display:block;margin-bottom:3px;color:#82dff1;font-size:5.7px;font-style:normal;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.dbovDiamond.major-spec .dbovDiamondCopy em,.dbovDiamond.major-peak .dbovDiamondCopy em{color:#ffe3a9}
.dbovMutator.rune{background:#68c7e8}.dbovMutator.extra{background:#d7aa59}.dbovMutator.book{background:#9f7ae6}.dbovMutator.passive{background:#6ca9b8}.dbovMutator.special{background:#ef9661}
.dbovMutator span small{display:block;margin-bottom:1px;color:#8eabc0;font-size:4.5px;letter-spacing:.08em;text-transform:uppercase}
.dbovMutator.rune span{color:#dff8ff}.dbovMutator.extra span{color:#ffe9ab}.dbovMutator.book span{color:#eadfff}.dbovMutator.special span{color:#ffe5d2}
.dbovEdge[data-contributors="0"] .dbovDiamond{filter:drop-shadow(0 10px 15px rgba(1,16,28,.32))}

/* V13 — cosmetic gate only. The V11 core algorithm is unchanged once Run has any selection. */
.dbovStep.pending-stage{border-style:dashed;border-color:rgba(169,208,232,.42);background:linear-gradient(155deg,rgba(13,50,72,.72),rgba(8,31,49,.78));box-shadow:inset 0 0 0 1px rgba(181,222,247,.035)}
.dbovStep.pending-stage::before{top:19%;bottom:19%;width:4px;background:linear-gradient(#7fabc5,#5e7d93);box-shadow:none;opacity:.72}
.dbovStep.pending-stage .dbovStepNum{border-style:dashed;border-color:rgba(167,211,237,.54);color:#9db8ca;box-shadow:none}
.dbovStep.pending-stage .dbovStepPath{color:#91adbf}
.dbovStep.pending-stage h4{font-size:clamp(13px,1.12vw,17px);line-height:1.08;color:#d0dde6;max-width:18ch}
.dbovStep.pending-stage .dbovStepSource{border-color:rgba(157,194,218,.18)}
.dbovStep.pending-stage .dbovStepSource b{color:#adc2d0}
.dbovStep.pending-stage .dbovStepSource small{color:#829caf}
.dbovEdge.pending-edge{opacity:.9}
.dbovEdge.pending-edge .dbovEdgeLine{height:5px;background:repeating-linear-gradient(90deg,rgba(138,184,211,.55) 0 11px,rgba(138,184,211,.13) 11px 19px);box-shadow:none}
.dbovEdge.pending-edge .dbovEdgeLine::after{border-left-color:#8eb6cd;opacity:.7}
.dbovDiamond.pending-diamond{background:#688ca2;filter:none;cursor:default;box-shadow:0 0 0 1px rgba(170,214,239,.18)}
.dbovDiamond.pending-diamond::before{background:linear-gradient(145deg,#113d57,#0b2b42)}
.dbovDiamond.pending-diamond .dbovDiamondCopy em{color:#8fb5ca}
.dbovDiamond.pending-diamond .dbovDiamondCopy b{color:#d6e3eb;font-size:clamp(7px,.66vw,10px)}
.dbovDiamond.pending-diamond .dbovDiamondCopy small{color:#829daf}
@media(max-width:760px){.dbovStep.pending-stage h4{font-size:14px;max-width:17ch}.dbovDiamond.pending-diamond .dbovDiamondCopy b{font-size:8px}}

/* V18 — approved visual changes over V17 ALTERNATIVE 2 */
:root{--alt2-nav-top:86px}
#dbuiTabs.alt2Tabs{display:flex;justify-content:center;width:max-content;max-width:100%;margin:0 auto 14px;padding:6px;border:1px solid transparent;border-radius:999px;background:linear-gradient(180deg,rgba(15,27,43,.96),rgba(8,17,29,.98)) padding-box,linear-gradient(135deg,#7b612c 0%,#e2bb59 45%,#9a7431 100%) border-box;box-shadow:0 12px 30px rgba(0,0,0,.26),0 0 22px rgba(222,181,78,.055);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
#dbuiTabs.alt2Tabs .dbuiTab{min-height:38px}

/* A square bounding box guarantees 45-degree diamond edges at every breakpoint. */
.dbovEdge{height:154px}
.dbovStep{min-height:154px}
.dbovDiamond{width:128px;height:128px;aspect-ratio:1/1}
.dbovDiamondCopy{width:88px}
.dbovDiamondCopy b{font-size:8.5px}.dbovDiamondCopy small{font-size:6.2px}
.dbovMutator{width:56px;height:56px;aspect-ratio:1/1}
.dbovMutator span{width:39px;font-size:5.15px;line-height:1.08}
.dbovMutator.top{top:0;left:2px}.dbovMutator.top2{top:0;right:2px}.dbovMutator.bottom{right:2px;bottom:0}.dbovMutator.bottom2{left:2px;bottom:0}

.dbovDiagram.alt2-core-focus .dbovStep,.dbovDiagram.alt2-core-focus .dbovDiamond{animation:alt2CoreFocus .48s cubic-bezier(.2,.72,.24,1) both}
.dbovDiagram.alt2-core-focus>*:nth-child(2) .dbovDiamond,.dbovDiagram.alt2-core-focus>*:nth-child(3){animation-delay:.055s}
.dbovDiagram.alt2-core-focus>*:nth-child(4) .dbovDiamond,.dbovDiagram.alt2-core-focus>*:nth-child(5){animation-delay:.11s}
@keyframes alt2CoreFocus{0%{opacity:.58;transform:translateY(5px);filter:brightness(.82)}58%{filter:brightness(1.16)}100%{opacity:1;transform:none;filter:none}}
.dbovSupport.alt2-support-focus .dbuiChip{animation:alt2SupportFocus .42s ease both}
@keyframes alt2SupportFocus{0%{opacity:.55;transform:translateY(3px)}60%{border-color:#748493;filter:brightness(1.12)}100%{opacity:1;transform:none;filter:none}}
.dbovStep.pending-stage[data-core-guide],.dbovEdge.pending-edge[data-core-guide]{cursor:pointer}
.dbovStep.pending-stage[data-core-guide]:hover{border-color:rgba(150,222,255,.7);background:linear-gradient(155deg,rgba(17,66,94,.9),rgba(9,37,58,.92))}
.dbovEdge.pending-edge[data-core-guide]:hover{opacity:1;filter:brightness(1.18)}
.dbovEmptyCore[data-core-guide="inventory"]{cursor:pointer;transition:border-color .16s,background .16s,color .16s,box-shadow .16s}
.dbovEmptyCore[data-core-guide="inventory"]:hover,.dbovEmptyCore[data-core-guide="inventory"]:focus-visible{outline:0;border-color:rgba(255,201,116,.68);background:rgba(37,77,103,.3);color:#dcefff;box-shadow:0 0 0 2px rgba(255,171,85,.08),0 0 28px rgba(92,182,235,.12)}
.alt2RunGuideFlash{animation:alt2RunGuideFlash 1.2s ease}
@keyframes alt2RunGuideFlash{0%,100%{box-shadow:0 0 0 0 rgba(113,231,255,0)}35%{box-shadow:0 0 0 3px rgba(113,231,255,.27),0 0 34px rgba(113,231,255,.18)}}
.metaStep.v19InventoryGuideFlash{position:relative;border-radius:15px;animation:v19InventoryGuideFlash 1.2s ease var(--v19-guide-delay,0ms) both}
@keyframes v19InventoryGuideFlash{0%,100%{box-shadow:0 0 0 0 rgba(255,171,85,0);filter:none}35%{box-shadow:0 0 0 3px rgba(255,171,85,.3),0 0 34px rgba(255,171,85,.18);filter:brightness(1.08)}}

#dbuiBadge,#horizon{cursor:pointer}
.alt2QualityPanel{position:fixed;z-index:4580;width:min(370px,calc(100vw - 24px));padding:13px;border:1px solid rgba(236,195,94,.44);border-radius:17px;background:radial-gradient(circle at 90% 0,rgba(244,198,80,.11),transparent 36%),linear-gradient(180deg,rgba(17,29,44,.99),rgba(7,15,25,.995));box-shadow:0 24px 70px rgba(0,0,0,.52);opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .15s,transform .15s,visibility .15s}
.alt2QualityPanel.open{opacity:1;visibility:visible;transform:none}
.alt2QualityHead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.alt2QualityHead small{display:block;color:#899fba;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.alt2QualityHead b{display:block;margin-top:2px;color:#fff;font-size:16px}.alt2QualityClose{width:30px;height:30px;border:1px solid #4b6078;border-radius:9px;background:#101c2b;color:#e7f1fd;font-size:17px;cursor:pointer}
.alt2QualityRows{display:grid;gap:7px}.alt2QualityRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:8px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:rgba(255,255,255,.022)}.alt2QualityRow span{color:#b9c9db;font-size:10px}.alt2QualityRow b{color:#eef6ff;font-size:11px}.alt2QualityTrack{grid-column:1/-1;height:5px;border-radius:999px;background:#1b2d41;overflow:hidden}.alt2QualityTrack i{display:block;height:100%;width:var(--q-fill,0%);border-radius:inherit;background:linear-gradient(90deg,#5bb8ff,#77d68a)}.alt2QualityFoot{margin:8px 2px 0;color:#8299b5;font-size:9px;line-height:1.4}

@media(max-width:760px){
  #dbuiTabs.alt2Tabs{position:sticky;top:var(--alt2-nav-top);z-index:74;width:100%;max-width:100%;margin:0 0 11px;padding:5px;justify-content:flex-start;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;background:linear-gradient(180deg,rgba(15,27,43,.965),rgba(8,17,29,.985)) padding-box,linear-gradient(135deg,#735b2b,#d6ad4e 52%,#8c6a30) border-box;box-shadow:0 10px 28px rgba(0,0,0,.34)}
  #dbuiTabs.alt2Tabs::-webkit-scrollbar{display:none}
  #dbuiTabs.alt2Tabs .dbuiTab{flex:1 0 auto;min-height:39px;padding:7px 10px;font-size:10px}
  .dbovEdge{height:150px}.dbovStep{min-height:150px}
  .dbovDiamond{width:122px;height:122px}.dbovDiamondCopy{width:84px}
  .dbovMutator{width:52px;height:52px}.dbovMutator span{width:36px;font-size:4.9px}
  .selItem{grid-template-columns:minmax(0,1fr) 40px!important;min-height:100px!important}
  .selCardActions{min-width:40px!important}.selCardRemove,.selCardRankBtn{width:36px!important;height:36px!important;border-radius:11px!important}
  .selCardTop b{font-size:11px!important}.selCardMeta{font-size:8px!important}.selCardStats span{font-size:8px!important;padding:4px 6px!important}
  .controlGroup button,.rankctl button,.lvlctl button,.iconBtn{min-width:34px!important;width:34px!important;height:34px!important}
  .alt2QualityPanel{left:0!important;right:0!important;top:auto!important;bottom:0;width:100%;border-radius:20px 20px 0 0;border-left:0;border-right:0;border-bottom:0;padding:14px 14px calc(18px + env(safe-area-inset-bottom,0px));transform:translateY(14px)}
  .alt2QualityPanel.open{transform:none}

  /* V18: LP stays on the slider; the five live characteristics share one compact row. */
  .topbar.budgetDock{gap:5px 7px!important;padding-top:6px!important;padding-bottom:6px!important}
  .dockMetric.dockCounter{display:none!important}
  .dockMetrics{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:4px!important}
  .dockMetric{min-width:0!important;padding:5px 4px!important;gap:3px!important;justify-content:center!important;font-size:8.5px!important;overflow:hidden}
  .dockMetric strong{min-width:0;font-size:10px!important;overflow:hidden;text-overflow:ellipsis}
}
@media(max-width:390px){.dbovEdge{height:142px}.dbovStep{min-height:142px}.dbovDiamond{width:112px;height:112px}.dbovDiamondCopy{width:77px}.dbovMutator{width:48px;height:48px}.dbovMutator span{width:34px;font-size:4.6px}.dockMetrics{gap:3px!important}.dockMetric{padding:4px 2px!important;gap:2px!important;font-size:7.2px!important}.dockMetric strong{font-size:8.8px!important}}
@media(prefers-reduced-motion:reduce){.dbovDiagram.alt2-core-focus .dbovStep,.dbovDiagram.alt2-core-focus .dbovDiamond,.dbovSupport.alt2-support-focus .dbuiChip,.alt2RunGuideFlash,.v19InventoryGuideFlash{animation:none!important}}

/* V21.1 — chat-priority polish: navigation, structural assistant, contextual help and sequential XP discounts. */
.summaryInfoIcon,.extraInfoIcon{flex:0 0 auto;background:transparent;padding:0}
.summaryTitle .ratingInfo{font-size:10px;font-weight:950;color:#a9d5ff}
.summaryInfoIcon:hover,.summaryInfoIcon:focus-visible,.extraInfoIcon:hover,.extraInfoIcon:focus-visible,.typeInfoIcon:hover,.typeInfoIcon:focus-visible{outline:0;border-color:#78c7ff;color:#fff!important}
.sectionGuidePanel .sectionGuideBody{display:grid;gap:8px}
.sectionGuidePanel .sectionGuideBlock{padding:9px 10px;border:1px solid rgba(255,255,255,.075);border-radius:11px;background:rgba(255,255,255,.025)}
.sectionGuidePanel .sectionGuideBlock b{display:block;margin-bottom:4px;color:#f1f7ff;font-size:11px}
.sectionGuidePanel .sectionGuideBlock p{margin:0;color:#aebfd2;font-size:10px;line-height:1.5}
.typeTabWrap{display:inline-flex;align-items:center}
.typeTabWrap .tab{margin:0}
.typeTabWrap.hasActiveInfo{padding-right:6px;border:1px solid #dff1ff;border-radius:10px;background:#dff1ff}
.typeTabWrap.hasActiveInfo .tab{border:0;border-radius:9px;padding-right:7px}
.typeInfoIcon{display:none!important;flex:0 0 auto;margin-left:1px;cursor:pointer}
.typeTabWrap.hasActiveInfo .typeInfoIcon{display:inline-grid!important;width:17px;height:17px;border:1px solid #45617e;border-radius:50%;background:transparent;color:#0b1522;font-size:10px;font-weight:950;padding:0}
.extraCatHead{display:flex;align-items:flex-start;justify-content:space-between;gap:7px;margin-bottom:7px}
.extraCatHead h4{margin:0}
.structureAssistantFocus{animation:structureAssistantFocus .8s ease}
@keyframes structureAssistantFocus{0%,100%{box-shadow:none}35%{box-shadow:0 0 0 2px rgba(91,184,255,.22),0 0 24px rgba(91,184,255,.12)}}
.checks{grid-template-columns:repeat(6,minmax(0,1fr))}
.checks .check{grid-column:span 3}
.check[data-structure-role]{cursor:pointer;border-width:1px;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s}
.checks .check[data-structure-role]{grid-column:span 2}
.check[data-structure-role] b{text-decoration:none}
.check[data-structure-role]::after{content:'подобрать';position:absolute;right:7px;top:7px;color:#7fbce7;font-size:7px;font-weight:900;letter-spacing:.055em;text-transform:uppercase}
.check[data-structure-role]:hover,.check[data-structure-role]:focus-visible{outline:0;transform:translateY(-1px);border-color:#69bff5;background:rgba(74,156,211,.12);box-shadow:0 8px 18px rgba(0,0,0,.18)}
.check[data-structure-role].isRoleActive{border-color:#73d5ff;background:rgba(67,153,209,.17);box-shadow:0 0 0 2px rgba(91,184,255,.08)}
@media(max-width:760px){.checks{grid-template-columns:repeat(2,minmax(0,1fr))}.checks .check,.checks .check[data-structure-role]{grid-column:auto}}
@media(max-width:520px){.checks{grid-template-columns:1fr}.check[data-structure-role]::after{content:'подобрать'}.typeTabWrap.hasActiveInfo{flex:1 0 auto}.typeTabWrap.hasActiveInfo .tab{flex:1}.extraCatHead{align-items:center}}

/* V23.8 — combat guides, class-bound curses and wisdom header polish. */
.combatInfoIcon,.wisdomInfoIcon,.buildPriceInfoIcon{appearance:none;background:transparent;padding:0;cursor:pointer;line-height:1;font-family:inherit}
.summaryTitleMain{display:inline-flex;align-items:center;gap:5px;min-width:0}
.buildPriceLine{display:flex!important;align-items:center;gap:5px;white-space:normal!important}
.buildPriceLine .buildPriceInfoIcon{margin-left:auto;flex:0 0 auto}
.sectionGuidePanel{max-height:min(72vh,620px);overflow:auto;overscroll-behavior:contain}
.sectionGuidePanel .sectionGuideBlock p{white-space:normal}
@media(max-width:760px){.sectionGuidePanel{max-height:76vh}.combatInfoIcon,.wisdomInfoIcon,.buildPriceInfoIcon{width:19px;height:19px;font-size:10px}}


/* V23.8 — inherited class curse + expanded combat info. */
.sectionGuideBlock.guideTone-danger{border-color:#783541!important;background:linear-gradient(145deg,rgba(105,38,49,.30),rgba(55,21,28,.22))!important;box-shadow:inset 3px 0 0 #a94a5b}
.sectionGuideBlock.guideTone-danger b{color:#ffc0c8!important}.sectionGuideBlock.guideTone-danger p{color:#d9a9b0!important}
.inheritedCurseName{display:inline-flex;align-items:center;gap:6px;color:#ffc0c8}.inheritedCurseName i{font-style:normal;color:#d84e61;font-size:10px;filter:drop-shadow(0 0 5px rgba(216,78,97,.28))}
.inheritedCurseExtra,.inheritedCurseCard{border-color:#6f3540!important;background:linear-gradient(145deg,rgba(91,31,42,.26),rgba(21,15,22,.92))!important;box-shadow:inset 3px 0 0 rgba(216,78,97,.62)}
.inheritedCurseCard .selCardType.inheritedCurseType,.inheritedCost{color:#e7a1ab!important;border-color:#71404a!important}.inheritedCurseEffect{margin-top:5px;color:#c99099;font-size:9px;line-height:1.42}.inheritedLock{color:#a96470;font-size:10px;opacity:.9}
.dbovInheritedCurseStrip{position:absolute;right:15px;top:8px;display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end;max-width:72%;z-index:6}.dbovInheritedCurseStrip[hidden]{display:none!important}
.inheritedCurseBadge{display:inline-flex;align-items:center;gap:5px;max-width:190px;border:1px solid #733744;border-radius:999px;padding:4px 7px;background:rgba(55,18,27,.90);box-shadow:0 5px 14px rgba(0,0,0,.2);white-space:nowrap;color:#eab2bb}.inheritedCurseBadge i{font-style:normal;color:#e05164;font-size:9px}.inheritedCurseBadge b{overflow:hidden;text-overflow:ellipsis;font-size:9px;color:#ffd1d7}.inheritedCurseBadge small{font-size:8px;color:#c67d89}.inheritedCurseBadge.suppressed{opacity:.62;border-style:dashed}.inheritedCurseBadge.suppressed b{text-decoration:line-through;text-decoration-thickness:1px}
#buildIntelSummaryBlock>.summaryTitle>.wisdomInfoIcon{margin-left:auto;flex:0 0 auto}
@media(max-width:760px){.dbovInheritedCurseStrip{position:static;max-width:none;justify-content:flex-start;margin-top:7px}.inheritedCurseBadge{max-width:100%;padding:4px 6px}.sectionGuideBlock.guideTone-danger{box-shadow:inset 3px 0 0 #a94a5b}}


/* V23.8 — reactive inherited curses in core. */
.dbovInheritedCurseStrip{
  position:static!important;
  width:100%;
  max-width:none!important;
  margin-top:8px;
  display:flex;
  flex-wrap:nowrap!important;
  justify-content:flex-start!important;
  gap:6px;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
  scrollbar-color:#7d4651 rgba(45,18,25,.42);
  -webkit-overflow-scrolling:touch;
  padding:0 0 5px;
}
.dbovInheritedCurseStrip[hidden]{display:none!important}
.dbovInheritedCurseStrip::-webkit-scrollbar{height:5px}
.dbovInheritedCurseStrip::-webkit-scrollbar-track{background:rgba(45,18,25,.42);border-radius:999px}
.dbovInheritedCurseStrip::-webkit-scrollbar-thumb{background:#7d4651;border-radius:999px}
.inheritedCurseBadge{
  appearance:none;
  font:inherit;
  cursor:pointer;
  flex:0 0 auto;
  min-width:0;
  max-width:168px!important;
  border:1px solid #733744;
  border-radius:999px;
  padding:5px 8px;
  background:rgba(55,18,27,.90);
  box-shadow:0 5px 14px rgba(0,0,0,.2);
  white-space:nowrap;
  color:#eab2bb;
  display:inline-flex;
  align-items:center;
  gap:5px;
  text-align:left;
  transition:border-color .14s,background .14s,transform .14s;
}
.inheritedCurseBadge:hover,.inheritedCurseBadge:focus-visible{
  outline:0;
  border-color:#c85b6d;
  background:rgba(81,25,37,.96);
  transform:translateY(-1px);
}
.inheritedCurseBadge b{
  min-width:0;
  max-width:104px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:9px;
  color:#ffd1d7;
}
.inheritedCurseBadge small{flex:0 0 auto;font-size:8px;color:#c67d89}
.inheritedCurseBadge.suppressed{opacity:.68;border-style:dashed}
.inheritedCurseExtra[data-inherited-curse-id]{cursor:pointer}
.inheritedCurseExtra[data-inherited-curse-id]:hover,
.inheritedCurseExtra[data-inherited-curse-id]:focus-visible{outline:0;border-color:#a64d5d!important}
@media(max-width:760px){
  .dbovInheritedCurseStrip{margin-top:7px;padding-bottom:4px}
  .inheritedCurseBadge{max-width:150px!important;padding:5px 7px}
  .inheritedCurseBadge b{max-width:88px}
}




/* V23.8 — restrained iconography, portable single-file build */
.v221Icon{display:block;flex:0 0 auto;object-fit:contain;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important}
.v221Icon.field{width:32px;height:32px}.v221Icon.list{width:43px;height:43px}.v221Icon.catalog{width:40px;height:40px}.v221Icon.card{width:48px;height:48px}.v221Icon.helper{width:44px;height:44px}.v221Icon.inspector{width:96px;height:96px}.v221Icon.role{width:56px;height:56px}
.pickerBtn.v221HasIcon{display:flex!important;align-items:center!important;gap:9px!important;text-align:left!important;min-width:0}.pickerBtn.v221HasIcon .v221FieldText{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pickerOpt.v221Row{display:grid!important;grid-template-columns:43px minmax(0,1fr)!important;column-gap:11px!important;align-items:center!important;padding-top:8px!important;padding-bottom:8px!important;text-align:left!important}
.pickerOpt.v221Row .v221ListText{min-width:0;display:block}.pickerOpt.v221Row .pickerOptNameLine{display:flex!important;align-items:center;min-width:0;margin:0 0 3px!important}.pickerOpt.v221Row .pickerOptNameLine>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pickerOpt.v221Row small{display:block!important;margin:0!important;line-height:1.28!important;white-space:normal!important;overflow:visible!important}
#catalogBody td:nth-child(2) .v221CatalogRow{display:grid;grid-template-columns:40px minmax(0,1fr);gap:9px;align-items:center;min-width:0}#catalogBody td:nth-child(2) .v221CatalogText{min-width:0}#catalogBody td:nth-child(2) .name,#catalogBody td:nth-child(2) .mini{min-width:0}
.extraCard .v221CardLead{display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;gap:10px!important;align-items:center!important;min-width:0}.extraCard .v221CardText{min-width:0}.extraCard .v221CardText b,.extraCard .v221CardText .mutedSmall{display:block;min-width:0;white-space:normal}.manualCurseEffect{margin-top:7px;color:#b98f9e;font-size:9px;line-height:1.42}.manualCurseExtra .rowInfo{margin-top:8px}.extraCard.v221WithIcon .inheritedCurseEffect,.extraCard.v221WithIcon .manualCurseEffect{margin-left:58px}
.recommend button[data-rec-add].v221HelperBtn{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:5px!important;min-width:104px!important;padding:8px 9px!important;line-height:1.05!important}.recommend button[data-rec-add].v221HelperBtn .v221HelperLabel{display:block}
.v221InspectorHero{display:grid;grid-template-columns:96px minmax(0,1fr);gap:15px;align-items:start;margin:0 0 13px}.v221InspectorHero.isUlt{grid-template-columns:56px minmax(0,1fr)}.v221InspectorTop{min-width:0;display:flex;flex-direction:column;gap:8px}.v221InspectorTop .dbuiInspectorTags{margin:0}.v221InspectorTop .dbuiInspectorFacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.v221InspectorRoleLabel{font-size:9px;color:#8ca1bd;text-transform:uppercase;letter-spacing:.07em;margin-bottom:3px}
/* explicitly keep Overview selected-element chips free of images */
#dbuiSelected .v221Icon,.dbuiSelected .v221Icon,.dbuiChip .v221Icon{display:none!important}
/* inventory stat lines stay text-only as in V21.4 */
.gearStats .v221Icon,.slotStats .v221Icon,.statTag .v221Icon{display:none!important}
@media(max-width:760px){.v221Icon.field{width:30px;height:30px}.v221Icon.list{width:42px;height:42px}.v221Icon.catalog{width:38px;height:38px}.v221Icon.card{width:46px;height:46px}.pickerOpt.v221Row{grid-template-columns:42px minmax(0,1fr)!important;column-gap:10px!important}.v221InspectorHero{grid-template-columns:88px minmax(0,1fr);gap:12px}.v221Icon.inspector{width:88px;height:88px}.v221InspectorTop .dbuiInspectorFacts{grid-template-columns:repeat(2,minmax(0,1fr))}.extraCard.v221WithIcon .inheritedCurseEffect,.extraCard.v221WithIcon .manualCurseEffect{margin-left:56px}}
.v221UltBadgeStack{position:relative;display:inline-block;width:56px;height:56px;flex:0 0 auto}
.v221UltBadgeStack .v221Icon.role{width:56px;height:56px}
.v221UltBadgeMini{position:absolute;right:-4px;bottom:-4px;width:24px;height:24px;border-radius:7px;background:rgba(8,18,35,.94);box-shadow:0 0 0 1px rgba(255,255,255,.12),0 8px 18px rgba(0,0,0,.28);padding:2px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.v221UltBadgeMini img{display:block;width:100%;height:100%;object-fit:contain}
#skillList .rowTop .v221SkillLead{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:10px!important;align-items:center!important;min-width:0}
#skillList .rowTop .v221SkillLead>div{min-width:0}
#skillList .rowTop .v221SkillLead b{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:760px){.v221UltBadgeMini{width:22px;height:22px;right:-3px;bottom:-3px}#skillList .rowTop .v221SkillLead{grid-template-columns:38px minmax(0,1fr)!important;gap:9px!important}}




/* V23.8 — uniform visual scale */
.v221Icon.inspector,.v221Icon.role{width:92px!important;height:92px!important;object-fit:contain!important}
.v221InspectorHero,.v221InspectorHero.isUlt{grid-template-columns:92px minmax(0,1fr)!important;gap:15px!important;align-items:start!important}
.v221UltBadgeStack{width:92px!important;height:92px!important}
.v221UltBadgeStack .v221Icon.role{width:92px!important;height:92px!important}
.v221UltBadgeMini{width:28px!important;height:28px!important;right:-3px!important;bottom:-3px!important;padding:2px!important}
.v223StatHead{display:flex;align-items:center;justify-content:flex-start;gap:7px;margin-top:3px;min-width:0}
.v223StatHead b{margin:0!important;min-width:0}
.v223StatIcon{display:block;width:28px;height:28px;object-fit:contain;flex:0 0 28px;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}
#heroStatsBlock .statCard.v223StatCard{text-align:left!important}
@media(max-width:760px){
 .v221Icon.inspector,.v221Icon.role{width:86px!important;height:86px!important}
 .v221InspectorHero,.v221InspectorHero.isUlt{grid-template-columns:86px minmax(0,1fr)!important;gap:12px!important}
 .v221UltBadgeStack{width:86px!important;height:86px!important}
 .v221UltBadgeStack .v221Icon.role{width:86px!important;height:86px!important}
 .v221UltBadgeMini{width:26px!important;height:26px!important}
 .v223StatHead{justify-content:center;gap:5px}
 .v223StatIcon{width:24px;height:24px;flex-basis:24px}
 #heroStatsBlock .statCard.v223StatCard{text-align:center!important}
}



/* V23.8 — overview support symmetry, structural check 5×2, curse picker spacing */
.dbovSupport .dbuiChips{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:6px!important;
  min-width:0;
}
.dbovSupport .dbuiChip{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:8px!important;
  min-width:0!important;
  min-height:42px;
  padding:6px 9px!important;
  overflow:hidden;
}
.dbovSupport .dbuiChip small{
  display:block!important;
  min-width:0;
  margin:0!important;
  font-size:6.5px!important;
  line-height:1.15!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  text-transform:uppercase;
}
.dbovSupport .dbuiChip b{
  display:block!important;
  min-width:0;
  font-size:8px!important;
  line-height:1.18!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere;
}

/* Desktop/tablet: exactly five left + five right. Structural roles sit on the right. */
#checks.checks{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-rows:minmax(54px,auto);
  gap:7px!important;
}
#checks .check{
  grid-column:auto!important;
  min-width:0;
  height:100%;
}
#checks .check:nth-child(1){grid-column:2!important;grid-row:1!important} /* Trigger */
#checks .check:nth-child(2){grid-column:2!important;grid-row:2!important} /* Engine */
#checks .check:nth-child(3){grid-column:2!important;grid-row:3!important} /* Result */
#checks .check:nth-child(4){grid-column:1!important;grid-row:1!important} /* BP/LBP */
#checks .check:nth-child(5){grid-column:1!important;grid-row:2!important} /* Ults */
#checks .check:nth-child(6){grid-column:1!important;grid-row:3!important} /* Supports */
#checks .check:nth-child(7){grid-column:1!important;grid-row:4!important} /* Skills */
#checks .check:nth-child(8){grid-column:2!important;grid-row:4!important} /* Paths */
#checks .check:nth-child(9){grid-column:1!important;grid-row:5!important} /* Suits */
#checks .check:nth-child(10){grid-column:2!important;grid-row:5!important} /* Synergy */

/* Selected curse card -> Add picker always has visible breathing room. */
#cursePicker{margin-top:4px!important}

@media(max-width:760px){
  .dbovSupport .dbuiChips{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dbovSupport .dbuiChip{grid-template-columns:66px minmax(0,1fr)!important;column-gap:7px!important;min-height:44px}
  .dbovSupport .dbuiChip small{font-size:6.2px!important;line-height:1.12!important}
  .dbovSupport .dbuiChip b{font-size:7.8px!important;line-height:1.17!important}

  /* On mobile the three clickable roles are simply first, while the grid stays 2-up. */
  #checks.checks{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:minmax(58px,auto)!important;gap:7px!important}
  #checks .check:nth-child(n){grid-column:auto!important;grid-row:auto!important}
}
@media(max-width:390px){
  .dbovSupport .dbuiChip{grid-template-columns:60px minmax(0,1fr)!important;column-gap:6px!important;padding:6px 7px!important}
  #checks.checks{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #checks .check{padding:7px!important;font-size:10px!important}
  #checks .check[data-structure-role]::after{right:6px;top:6px;font-size:6px}
}



/* V23.8 — support block: header always above compact responsive chips */
.dbovSupport{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "head meta"
    "chips chips"!important;
  align-items:end!important;
  gap:8px 12px!important;
  padding:11px 12px 12px!important;
}
.dbovSupportHead{grid-area:head!important;min-width:0}
.dbovSupportMeta{grid-area:meta!important;align-self:end!important;margin:0 0 1px!important}
.dbovSupport .dbuiChips{
  grid-area:chips!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
}
.dbovSupport .dbuiChip{
  display:grid!important;
  grid-template-columns:minmax(54px,70px) minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:7px!important;
  min-width:0!important;
  min-height:34px!important;
  height:auto!important;
  padding:5px 8px!important;
  box-sizing:border-box!important;
}
.dbovSupport .dbuiChip small{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  font-size:6.2px!important;
  line-height:1.08!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.dbovSupport .dbuiChip b{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  font-size:7.8px!important;
  line-height:1.12!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow-wrap:anywhere!important;
}
@media(max-width:1100px){
  .dbovSupport .dbuiChips{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .dbovSupport{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:"head" "chips"!important;
    gap:7px!important;
    padding:9px!important;
  }
  .dbovSupportMeta{display:none!important}
  .dbovSupport .dbuiChips{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  .dbovSupport .dbuiChip{
    grid-template-columns:minmax(50px,64px) minmax(0,1fr)!important;
    min-height:34px!important;
    padding:5px 7px!important;
    column-gap:6px!important;
  }
  .dbovSupport .dbuiChip small{font-size:6px!important;line-height:1.06!important}
  .dbovSupport .dbuiChip b{font-size:7.6px!important;line-height:1.1!important}
}
@media(max-width:390px){
  .dbovSupport .dbuiChip{grid-template-columns:minmax(46px,58px) minmax(0,1fr)!important;padding:5px 6px!important}
}



/* V23.8 — symmetry, desktop overlay pickers, compact overview */
@media (min-width:901px){
  .synergyLegend{width:min(940px,100%)!important;max-width:940px!important;box-sizing:border-box}
  .dbovHeader{grid-template-columns:minmax(145px,.24fr) minmax(0,1fr)!important;gap:16px!important;padding:7px 16px 5px!important}
  .dbovHeader h2{font-size:clamp(18px,1.55vw,26px)!important;line-height:1!important;white-space:nowrap!important}
  .dbovHeader .qualityBadge{width:min(650px,100%)!important;padding:9px 18px!important;gap:10px!important;border-width:1px!important;font-size:clamp(15px,1.45vw,23px)!important}
}
/* Dock: five equal metric columns, then 3/5 progress + two 1/5 action buttons. */
.topbar.budgetDock{grid-template-columns:repeat(5,minmax(0,1fr))!important;column-gap:6px!important;row-gap:7px!important}
.budgetDesktop{grid-column:1/-1!important;min-width:0}
.dockCounter{display:none!important}
.dockMetrics{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important;width:100%!important;min-width:0}
.dockMetric{width:100%!important;min-width:0!important;box-sizing:border-box!important;justify-content:center!important;overflow:hidden}
.dockProgress{grid-column:1/4!important;grid-row:auto!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;align-self:center}
.dockActions{grid-column:4/6!important;grid-row:auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;width:100%!important;min-width:0!important}
.dockActions .dockSave,.dockActions .dockReset{width:100%!important;min-width:0!important;box-sizing:border-box!important;text-align:center!important;padding-left:5px!important;padding-right:5px!important}
@media(max-width:760px){
  .topbar.budgetDock{grid-template-columns:repeat(5,minmax(0,1fr))!important;padding-left:9px!important;padding-right:9px!important}
  .budgetDesktop{display:none!important}
  .dockMetrics{grid-column:1/-1!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:4px!important}
  .dockProgress{grid-column:1/4!important}
  .dockActions{grid-column:4/6!important;gap:4px!important}
  .dockActions .dockSave,.dockActions .dockReset{font-size:9px!important;padding:6px 2px!important}
}
/* Every picker can escape panel overflow on desktop and mobile. */
.picker.mobileViewportOpen .pickerMenu,
.presetBuildPicker.mobileViewportOpen .pickerMenu,
.artifactChoice.mobileViewportOpen .pickerMenu{
  position:fixed!important;z-index:6200!important;right:auto!important;bottom:auto;transform:none!important;margin:0!important;display:block!important;min-width:0!important;max-width:none!important;box-sizing:border-box!important
}
.picker.mobileViewportOpen .pickerOpts{overflow:auto!important}



/* V23.8 — suit icon picker, one-line desktop dock, reliable previews */
#statFilter{display:none!important}
.v233SuitFilter{position:relative;min-width:210px;flex:1 1 210px}
.v233SuitButton{width:100%;height:38px;border:1px solid #314762;border-radius:10px;background:#071321;color:#edf5ff;padding:6px 34px 6px 10px;display:flex;align-items:center;gap:8px;text-align:left;font:inherit;cursor:pointer;position:relative}
.v233SuitButton:after{content:'⌄';position:absolute;right:12px;top:50%;transform:translateY(-54%);color:#a9bdd6;font-size:15px}
.v233SuitButton .v233SuitIcon,.v233SuitOption .v233SuitIcon{width:25px;height:25px;object-fit:contain;flex:0 0 25px}
.v233SuitButton .v233SuitLabel{font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v233SuitMenu{position:fixed;z-index:7100;display:none;width:260px;max-height:min(530px,70vh);overflow:auto;padding:5px;border:1px solid #39526e;border-radius:11px;background:#071321;box-shadow:0 24px 65px rgba(0,0,0,.58)}
.v233SuitFilter.open .v233SuitMenu{display:block}
.v233SuitOption{width:100%;border:0;border-radius:8px;background:transparent;color:#edf4ff;display:flex;align-items:center;gap:9px;padding:7px 8px;text-align:left;cursor:pointer;font:inherit}
.v233SuitOption:hover,.v233SuitOption.active{background:#173b67}
.v233SuitOption span{font-weight:700;white-space:nowrap}.v233SuitOption small{margin-left:auto;color:#7188a7;font-size:9px}
.v233SuitOption.all{min-height:34px}.v233SuitOption.all .v233SuitIcon{visibility:hidden}
@media(max-width:760px){.v233SuitFilter{min-width:0;flex:1 1 160px}.v233SuitButton{height:36px}.v233SuitMenu{width:min(280px,calc(100vw - 20px))}}

@media(min-width:901px){
  .topbar.budgetDock{grid-template-columns:repeat(7,minmax(0,1fr))!important;column-gap:6px!important;row-gap:7px!important;align-items:center!important}
  .budgetDesktop{grid-column:1/3!important;grid-row:1!important;display:flex!important;flex-wrap:nowrap!important;gap:3px!important;min-width:0!important;overflow:hidden}
  .budgetDesktop>.muted{flex:0 0 auto;font-size:7.5px!important}
  .budgetDesktop .preset{min-width:25px!important;width:25px!important;height:27px!important;padding:2px!important;font-size:8.5px!important;flex:0 0 25px!important}
  .budgetDesktop .budgetBox{height:27px!important;padding:2px 5px!important;gap:2px!important;min-width:48px!important;flex:1 1 52px!important}
  .budgetDesktop .budgetBox input{width:28px!important;min-width:0!important;font-size:9px!important}
  .dockMetrics{grid-column:3/8!important;grid-row:1!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important}
  .dockProgress{grid-column:1/6!important;grid-row:2!important}
  .dockActions{grid-column:6/8!important;grid-row:2!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

.dbuiPreviewPop.v233Preview{width:min(430px,calc(100vw - 24px))!important;pointer-events:none!important;z-index:7300!important}
.dbuiPreviewPop.v233Preview .dbuiPreviewMetrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.dbuiPreviewPop.v233Preview .dbuiPreviewMetric b{white-space:nowrap}



#pathFilter{display:none!important}
.v234PathFilter{position:relative;min-width:165px;flex:1 1 165px}
.v234PathButton{width:100%;height:38px;border:1px solid #314762;border-radius:10px;background:#071321;color:#edf5ff;padding:6px 34px 6px 10px;display:flex;align-items:center;gap:8px;text-align:left;font:inherit;cursor:pointer;position:relative}
.v234PathButton:after{content:'⌄';position:absolute;right:12px;top:50%;transform:translateY(-54%);color:#a9bdd6;font-size:15px}
.v234PathButton .v234PathIcon,.v234PathOption .v234PathIcon{width:27px;height:27px;object-fit:contain;flex:0 0 27px}
.v234PathButton .v234PathLabel{font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v234PathMenu{position:fixed;z-index:7150;display:none;width:230px;max-height:min(420px,70vh);overflow:auto;padding:5px;border:1px solid #39526e;border-radius:11px;background:#071321;box-shadow:0 24px 65px rgba(0,0,0,.58)}
.v234PathFilter.open .v234PathMenu{display:block}
.v234PathOption{width:100%;min-height:42px;border:0;border-radius:8px;background:transparent;color:#eaf3ff;padding:6px 8px;display:flex;align-items:center;gap:10px;text-align:left;font:inherit;cursor:pointer}
.v234PathOption:hover,.v234PathOption.active{background:#123156}
.v234PathOption.all .v234PathIcon{opacity:.28}
@media(max-width:760px){.v234PathFilter{min-width:0;flex:1 1 145px}.v234PathButton{height:36px}.v234PathMenu{width:min(250px,calc(100vw - 20px))}}



/* supplied Madboys brand mark */
.heroBrand{display:flex;align-items:center;gap:12px;margin:8px 0 12px;min-width:0}
.heroBrand .heroBrandLogo{width:54px;height:54px;object-fit:contain;flex:0 0 54px;filter:drop-shadow(0 5px 12px rgba(0,0,0,.28))}
.heroBrand h1{margin:0!important;min-width:0}
.buildCostSummary .curseCostTotal{color:#ff9fb0}

/* All three Hybrid/Curse columns use the same breathing room before + add. */
#silverPicker,#goldPicker,#cursePicker{margin-top:7px!important}

/* Compact labels in the two catalog filter controls; menu rows keep their readable size. */
@media(min-width:761px){
  .v233SuitButton,.v234PathButton{font-size:11px!important;font-weight:750!important}
  .v233SuitButton .v233SuitLabel,.v234PathButton .v234PathLabel{font-size:11px!important}
  .dbuiPreviewPop .dbuiPreviewMetrics{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row!important}
}
@media(max-width:760px){
  .heroBrand{gap:9px;margin:7px 0 10px}
  .heroBrand .heroBrandLogo{width:40px;height:40px;flex-basis:40px}
}



.extraCompactEffect{margin-top:1px;color:#9eb0c4;font-size:9px;line-height:1.32}
.extraCard.v221WithIcon .extraCompactEffect{margin-left:58px}
@media(max-width:760px){.extraCard.v221WithIcon .extraCompactEffect{margin-left:56px}}
.v237BuildRoster{display:none}
@media(min-width:1180px){
  .hero{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(500px,.9fr);column-gap:28px;align-items:start}
  .hero>.kicker,.hero>.v236BrandTitle,.hero>.heroActions,.hero>.synergyLegend{grid-column:1;min-width:0}
  .v237BuildRoster{display:flex;grid-column:2;grid-row:1/5;align-self:stretch;min-width:0;flex-direction:column;padding:2px 0 0}
  .v237BuildRosterTitle{font-size:9px;line-height:1.2;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#7f97b2;margin:0 0 9px}
  .v237BuildRosterGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:40px;gap:6px 8px;align-content:start;min-height:178px}
  .v237BuildRosterItem{display:grid;grid-template-columns:31px minmax(0,1fr);align-items:center;gap:5px;min-width:0;overflow:hidden}
  .v237BuildRosterItem img{display:block;width:31px;height:31px;object-fit:contain;filter:drop-shadow(0 3px 5px rgba(0,0,0,.28))}
  .v237BuildRosterName{font-size:8px;line-height:1.12;font-weight:800;color:#dbe6f3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
  .v237BuildRoster.isDense .v237BuildRosterGrid{grid-auto-rows:32px;gap:3px 6px}
  .v237BuildRoster.isDense .v237BuildRosterItem{grid-template-columns:25px minmax(0,1fr);gap:4px}
  .v237BuildRoster.isDense .v237BuildRosterItem img{width:25px;height:25px}
  .v237BuildRoster.isDense .v237BuildRosterName{font-size:7px;line-height:1.05}
  .v237BuildRosterEmpty{grid-column:1/-1;color:#627990;font-size:10px;align-self:center}
}
@media(min-width:1180px) and (max-width:1380px){
  .hero{grid-template-columns:minmax(0,1.45fr) minmax(440px,.9fr);column-gap:20px}
  .v237BuildRosterGrid{gap:5px}
  .v237BuildRosterItem{grid-template-columns:28px minmax(0,1fr);gap:4px}
  .v237BuildRosterItem img{width:28px;height:28px}
  .v237BuildRosterName{font-size:7.5px}
}



/* V23.8 — path and suit dropdown typography match exactly. */
@media(min-width:761px){
  .v233SuitOption,.v234PathOption{font-size:14px!important;line-height:1.2!important;font-weight:400!important;padding:7px 8px!important;min-height:39px!important}
  .v233SuitOption>span:not(.v233SuitIcon),.v234PathOption>span:not(.v234PathIcon){font-size:14px!important;font-weight:700!important;line-height:1.2!important;white-space:nowrap}
  .v233SuitButton,.v234PathButton{font-size:11px!important;font-weight:750!important}
  .v233SuitButton .v233SuitLabel,.v234PathButton .v234PathLabel{font-size:11px!important;font-weight:750!important}
}

/* Hybrid / curse columns: same geometry and rhythm for all three groups. */
.extrasGrid>.extraCat{padding:9px!important;border-radius:12px!important;background:#0c1624!important}
.extraCat.curse .extraCard,.extraCat.curse .inheritedCurseExtra{
  background:#09131f!important;
  border:1px solid #324a65!important;
  box-shadow:none!important;
  border-radius:9px!important;
  padding:7px!important;
}
.extraCat.curse .inheritedCurseName{color:#eab2bb}
.extraCat.curse .inheritedLock{color:#b66b78}
.extraCompactEffect,.manualCurseEffect,.inheritedCurseEffect{
  margin-top:1px!important;
  font-size:9px!important;
  line-height:1.30!important;
}
.manualCurseExtra .rowInfo,.inheritedCurseExtra .rowInfo,.extraCard .rowInfo{margin-top:6px!important}
.extraCard.v221WithIcon .extraCompactEffect,
.extraCard.v221WithIcon .manualCurseEffect,
.extraCard.v221WithIcon .inheritedCurseEffect{margin-left:58px!important}
#silverPicker,#goldPicker,#cursePicker{margin-top:7px!important}

/* Header spacing: keep the three left header blocks on one regular vertical rhythm. */
.heroActions{margin-bottom:8px!important}
.synergyLegend{margin-top:0!important}
@media(min-width:1180px){
  .hero{grid-template-columns:minmax(0,1.55fr) minmax(540px,1fr)!important;column-gap:26px!important;align-items:start!important}
  .hero>.kicker,.hero>.v236BrandTitle,.hero>.heroBrand,.hero>.heroActions,.hero>.synergyLegend{grid-column:1!important;min-width:0}
  .v237BuildRoster{grid-column:2!important;grid-row:1/5!important;align-self:start!important;padding-top:1px!important}
  .v237BuildRosterTitle{margin-bottom:8px!important}
  .v237BuildRosterGrid{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    grid-auto-rows:78px!important;
    gap:6px 8px!important;
    min-height:330px!important;
    align-content:start!important;
  }
  .v237BuildRosterItem{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:2px!important;
    min-width:0!important;
    overflow:hidden!important;
    text-align:center!important;
  }
  .v237BuildRosterItem img{
    display:block!important;
    width:56px!important;
    height:56px!important;
    flex:0 0 56px!important;
    object-fit:contain!important;
    filter:drop-shadow(0 4px 6px rgba(0,0,0,.30))!important;
  }
  .v237BuildRosterName{
    width:100%!important;
    font-size:8px!important;
    line-height:1.05!important;
    font-weight:800!important;
    color:#dbe6f3!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    text-align:center!important;
  }
  .v237BuildRoster.isDense .v237BuildRosterGrid{grid-auto-rows:66px!important;gap:4px 6px!important;min-height:282px!important}
  .v237BuildRoster.isDense .v237BuildRosterItem{display:flex!important;gap:1px!important}
  .v237BuildRoster.isDense .v237BuildRosterItem img{width:46px!important;height:46px!important;flex-basis:46px!important}
  .v237BuildRoster.isDense .v237BuildRosterName{font-size:7px!important;line-height:1.02!important}
}
@media(min-width:1180px) and (max-width:1380px){
  .hero{grid-template-columns:minmax(0,1.35fr) minmax(500px,1fr)!important;column-gap:18px!important}
  .v237BuildRosterGrid{grid-auto-rows:72px!important;gap:4px 5px!important;min-height:304px!important}
  .v237BuildRosterItem img{width:51px!important;height:51px!important;flex-basis:51px!important}
  .v237BuildRosterName{font-size:7.5px!important}
}

/* Floating header: use color as a fast visual index. */
#dockAttack{color:#ff746e!important}
#dockDefense{color:#70bfff!important}
#dockWisdom{color:#f39ad7!important}
#dockGold{color:#ffd166!important}



/* V23.9 — keep the desktop hero header compact and exclude base curses from the roster. */
.heroActions{margin:4px 0 6px!important;row-gap:6px!important;column-gap:10px!important}
.heroActions>.dbuiQuickPreset{margin:0!important}
.synergyLegend{margin-top:0!important;margin-bottom:0!important}
@media(min-width:1180px){
  .hero{grid-template-columns:minmax(0,1.62fr) minmax(500px,.92fr)!important;column-gap:22px!important;align-items:start!important}
  .v237BuildRoster{padding-top:1px!important;align-self:start!important}
  .v237BuildRosterTitle{margin:0 0 5px!important}
  .v237BuildRosterGrid{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    grid-auto-rows:68px!important;
    column-gap:2px!important;
    row-gap:2px!important;
    min-height:278px!important;
    align-content:start!important;
  }
  .v237BuildRosterItem{gap:0!important;padding:0!important}
  .v237BuildRosterItem img{width:56px!important;height:56px!important;flex-basis:56px!important}
  .v237BuildRosterName{font-size:7px!important;line-height:1!important;margin-top:0!important;-webkit-line-clamp:2!important}
  /* Up to 20 items retain the same icon size; only genuinely larger builds may compact. */
  .v237BuildRoster:not(.isDense) .v237BuildRosterItem img{width:56px!important;height:56px!important;flex-basis:56px!important}
  .v237BuildRoster.isDense .v237BuildRosterGrid{grid-auto-rows:58px!important;column-gap:1px!important;row-gap:1px!important;min-height:238px!important}
  .v237BuildRoster.isDense .v237BuildRosterItem img{width:48px!important;height:48px!important;flex-basis:48px!important}
}
@media(min-width:1180px) and (max-width:1380px){
  .hero{grid-template-columns:minmax(0,1.5fr) minmax(470px,.9fr)!important;column-gap:16px!important}
  .v237BuildRosterGrid{grid-auto-rows:66px!important;column-gap:1px!important;row-gap:1px!important;min-height:270px!important}
  .v237BuildRosterItem img{width:54px!important;height:54px!important;flex-basis:54px!important}
}


/* V24.1 WEB — production accessibility / safe-area polish */
:root{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}
:where(button,[role="button"],input,select,textarea,.pickerBtn,.pickerOpt):focus-visible{outline:2px solid #f3c85b!important;outline-offset:2px!important}
@media(max-width:760px){
  body{padding-left:var(--safe-left);padding-right:var(--safe-right)}
  .sectionGuidePanel,.alt2QualityPanel,.dbuiInspector{padding-bottom:calc(12px + var(--safe-bottom))!important}
  .buildDock,.floatingTabs,.dbuiDock{bottom:var(--safe-bottom)}
}


/* V24.2 WEB — item crafting tooltip (separate craft rarity system). */
.v237BuildRosterItem[data-craft-base]{cursor:help}
.craftTooltip{position:fixed;z-index:8000;width:min(430px,calc(100vw - 24px));display:none;pointer-events:none;border:1px solid var(--craft-color,#789);border-radius:16px;padding:13px 14px 12px;background:linear-gradient(145deg,var(--craft-bg,rgba(10,24,39,.98)),rgba(7,17,29,.985));box-shadow:0 18px 55px rgba(0,0,0,.48),0 0 24px color-mix(in srgb,var(--craft-color,#789) 20%,transparent);backdrop-filter:blur(12px);color:#eef6ff}
.craftTooltip.open{display:block}
.craftTooltip[data-tier="8"]{border-image:linear-gradient(135deg,var(--craft-color),var(--craft-color2)) 1}
.craftTooltip[data-tier="9"]{box-shadow:0 18px 55px rgba(0,0,0,.48),0 0 28px rgba(255,229,151,.26)}
.craftTooltip[data-tier="10"]{border-color:#ac7cff;background:radial-gradient(circle at 80% 10%,rgba(62,216,255,.16),transparent 36%),radial-gradient(circle at 10% 90%,rgba(236,71,255,.16),transparent 34%),linear-gradient(145deg,#13101d,#07111d)}
.craftHead{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:9px;margin-bottom:9px;border-bottom:1px solid color-mix(in srgb,var(--craft-color,#789) 28%,#223449)}
.craftHead>div:first-child{min-width:0;display:flex;flex-direction:column;gap:2px}.craftHead small{font-size:8px;letter-spacing:.14em;font-weight:900;color:var(--craft-color,#aac0d6)}.craftHead b{font-size:16px;line-height:1.12}.craftHead span{font-size:9px;color:#91a7bd}
.craftTier{flex:0 0 auto;min-width:58px;display:flex;flex-direction:column;align-items:center;font-family:Georgia,serif;font-size:27px;line-height:.9;font-weight:800;color:var(--craft-color,#fff);text-shadow:0 2px 10px rgba(0,0,0,.45)}.craftTier span{font-family:inherit;font-size:7px!important;line-height:1.1;margin-top:5px;color:#eef6ff!important;text-transform:uppercase;letter-spacing:.04em;font-weight:900}
.craftRecipe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 9px}.craftIng{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:7px;min-width:0}.craftIngIcon{position:relative;width:42px;height:42px}.craftIngIcon img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 4px 5px rgba(0,0,0,.35))}.craftIngIcon b{position:absolute;right:-2px;bottom:-1px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#091523;border:1px solid var(--craft-color,#789);display:flex;align-items:center;justify-content:center;font-size:8px;line-height:1;color:#fff}
.craftIngText{min-width:0;display:flex;flex-direction:column;gap:2px}.craftIngText strong{font-size:9px;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.craftIngText span{font-size:7.5px;color:#91a7bd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.craftIngText em{font-style:normal;font-weight:900;color:var(--craft-color,#dfe9f5)}
.craftFoot{margin-top:9px;padding-top:8px;border-top:1px solid #21364b;font-size:7.5px;line-height:1.25;color:#718aa2}
@media(max-width:760px){.craftTooltip{display:none!important}}

/* V24.4 — artifact crafting recipes */
.craftBaseReq{display:grid;grid-template-columns:48px minmax(0,1fr) 20px;align-items:center;gap:8px;margin:0 0 9px;padding:7px 8px;border:1px solid color-mix(in srgb,var(--craft-color,#789) 45%,transparent);border-radius:11px;background:color-mix(in srgb,var(--craft-color,#789) 9%,transparent)}
.craftBaseReq>img{width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 4px 6px rgba(0,0,0,.38))}.craftBaseReq>div{display:flex;min-width:0;flex-direction:column;gap:1px}.craftBaseReq small{font-size:7px;font-weight:900;letter-spacing:.09em;color:#8fa8bf}.craftBaseReq strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.craftBaseReq span{font-size:7.5px;color:#91a7bd}.craftBaseReq>b{font-size:21px;color:var(--craft-color,#fff);text-align:center}

/* V24.5 — crafting balance + readable 128px ingredient tooltip */
.craftTooltip{width:min(980px,calc(100vw - 28px))!important;padding:18px 20px 17px!important;border-radius:18px!important}
.craftHead{gap:18px!important;padding-bottom:13px!important;margin-bottom:14px!important}
.craftHead>div:first-child{gap:4px!important}.craftHead small{font-size:11px!important}.craftHead b{font-size:22px!important;line-height:1.15!important}.craftHead span{font-size:13px!important}
.craftTier{font-size:28px!important}.craftTier span{font-size:11px!important}
.craftRecipe{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:15px 18px!important}
.craftIng{grid-template-columns:128px minmax(0,1fr)!important;align-items:center!important;gap:11px!important;min-height:128px!important}
.craftIngIcon{width:128px!important;height:128px!important;flex:0 0 128px!important}
.craftIngIcon img{width:128px!important;height:128px!important;max-width:128px!important;max-height:128px!important;object-fit:contain!important}
.craftIngIcon b{right:1px!important;bottom:1px!important;min-width:28px!important;height:28px!important;padding:0 7px!important;border-radius:14px!important;font-size:13px!important}
.craftIngText{gap:5px!important}.craftIngText strong{font-size:14px!important;line-height:1.15!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}.craftIngText span{font-size:12px!important;line-height:1.25!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.craftFoot{margin-top:14px!important;padding-top:11px!important;font-size:11px!important;line-height:1.35!important}
.craftBaseReq{grid-template-columns:92px minmax(0,1fr) 28px!important;gap:12px!important;margin-bottom:14px!important;padding:10px 12px!important}.craftBaseReq>img{width:92px!important;height:92px!important}.craftBaseReq small{font-size:9px!important}.craftBaseReq strong{font-size:15px!important}.craftBaseReq span{font-size:11px!important}.craftBaseReq>b{font-size:27px!important}
@media(max-width:1120px) and (min-width:761px){.craftTooltip{width:min(760px,calc(100vw - 28px))!important}.craftRecipe{grid-template-columns:repeat(2,minmax(0,1fr))!important}}


/* V24.6 — artifact base row: 128px image owns its column; text can never sit under it. */
.craftBaseReq{
  grid-template-columns:128px minmax(0,1fr) 36px!important;
  column-gap:20px!important;
  min-height:150px!important;
  padding:10px 14px!important;
  align-items:center!important;
}
.craftBaseReq>img{
  width:128px!important;
  height:128px!important;
  max-width:128px!important;
  max-height:128px!important;
  object-fit:contain!important;
  justify-self:start!important;
}
.craftBaseReq>div{
  min-width:0!important;
  padding-left:4px!important;
  position:relative!important;
  z-index:1!important;
}
.craftBaseReq small{font-size:10px!important;line-height:1.15!important}
.craftBaseReq strong{font-size:17px!important;line-height:1.18!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.craftBaseReq span{font-size:12px!important;line-height:1.25!important}
.craftBaseReq>b{font-size:30px!important;justify-self:end!important}


/* V24.8 — restore compact ingredient icons; keep readable copy; shift artifact-base copy right without enlarging the base item. */
.craftIng{
  grid-template-columns:42px minmax(0,1fr)!important;
  gap:9px!important;
  min-height:48px!important;
  align-items:center!important;
}
.craftIngIcon{
  width:42px!important;
  height:42px!important;
  flex:0 0 42px!important;
}
.craftIngIcon img{
  width:42px!important;
  height:42px!important;
  max-width:42px!important;
  max-height:42px!important;
  object-fit:contain!important;
}
.craftIngIcon b{
  right:-2px!important;
  bottom:-1px!important;
  min-width:19px!important;
  height:19px!important;
  padding:0 5px!important;
  border-radius:10px!important;
  font-size:9px!important;
}
/* Base-item art stays at the previous 92px size. The first grid track is wider solely to create breathing room before the text. */
.craftBaseReq{
  grid-template-columns:112px minmax(0,1fr) 28px!important;
  column-gap:12px!important;
  min-height:112px!important;
  padding:10px 12px!important;
  align-items:center!important;
}
.craftBaseReq>img{
  width:92px!important;
  height:92px!important;
  max-width:92px!important;
  max-height:92px!important;
  object-fit:contain!important;
  justify-self:start!important;
}
.craftBaseReq>div{
  min-width:0!important;
  padding-left:0!important;
}
.craftBaseReq small{font-size:10px!important;line-height:1.15!important}
.craftBaseReq strong{font-size:17px!important;line-height:1.18!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.craftBaseReq span{font-size:12px!important;line-height:1.25!important}
.craftBaseReq>b{font-size:27px!important;justify-self:end!important}

/* V24.8 — compact crafting tooltip: keep V24.7 icon/copy sizes, remove excess horizontal whitespace. */
@media (min-width:761px){
  .craftTooltip{
    width:min(560px,calc(100vw - 28px))!important;
    padding:16px 18px 15px!important;
  }
  .craftHead{
    gap:12px!important;
    padding-bottom:10px!important;
    margin-bottom:11px!important;
  }
  .craftRecipe{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:14px!important;
    row-gap:9px!important;
  }
  .craftIng{
    gap:8px!important;
    min-width:0!important;
  }
  .craftBaseReq{
    grid-template-columns:112px minmax(0,1fr) 24px!important;
    column-gap:10px!important;
    margin-bottom:11px!important;
  }
}

/* V24.9.8 — магия маркируется только там, где реально присутствует */
.sectionGuideBlock.guideTone-magic{border-color:#425b87!important;background:linear-gradient(145deg,rgba(55,79,126,.27),rgba(32,42,72,.22))!important;box-shadow:inset 3px 0 0 #6687c7}
.sectionGuideBlock.guideTone-magic b{color:#cbdcff!important}.sectionGuideBlock.guideTone-magic p{color:#adbedb!important}
.magicCombatTag{border-color:#596f9a!important;background:rgba(78,101,151,.14)!important;color:#c8d8ff!important;text-transform:none!important;letter-spacing:0!important}
.gearStats .magicCombatTag{font-weight:900}
@media(max-width:760px){.sectionGuideBlock.guideTone-magic{box-shadow:inset 3px 0 0 #6687c7}}

/* V24.9.8 — INT-маркер проверок через Мудрость W */
.intCombatTag{border-color:#80699f!important;background:rgba(112,83,154,.14)!important;color:#e4d4ff!important;text-transform:none!important;letter-spacing:.02em!important;font-weight:900!important}

.sectionGuideBlock.guideTone-int{border-color:#665180!important;background:linear-gradient(145deg,rgba(96,70,130,.24),rgba(37,28,53,.22))!important;box-shadow:inset 3px 0 0 #9270ba}
.sectionGuideBlock.guideTone-int b{color:#eadcff!important}.sectionGuideBlock.guideTone-int p{color:#cbb8df!important}
@media(max-width:760px){.sectionGuideBlock.guideTone-int{box-shadow:inset 3px 0 0 #9270ba}}

.controlCombatTag{opacity:.94}

.catalogCombatTags{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px;min-height:0}
.catalogCombatTags:empty{display:none}

.powerRatingBadge{color:#e24848;font-weight:900;font-size:.88em;text-shadow:0 0 8px rgba(226,72,72,.22)}.cleanDamageTag{border-color:rgba(255,96,96,.45)!important;color:#ff8b8b!important;font-weight:800!important}

/* V25 — compact ratings, scoped combat tags, elemental channel colors */
.ratedNameLine{display:inline-flex!important;align-items:baseline!important;gap:.28em!important;min-width:0;max-width:100%;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis}
.ratedNameLine .powerRatingBadge{flex:0 0 auto;white-space:nowrap}
.pickerOptNameLine>span.ratedNameLine{display:inline-flex!important}
.v221FieldText.ratedNameLine{display:inline-flex!important;align-items:baseline!important;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.tipCombatTags{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0 6px}.tipCombatTag,.combatInspectorTag{border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:3px 6px;font-size:8px;font-weight:800;line-height:1.2}.tipCombatTag.magicCombatTag,.combatInspectorTag.magicCombatTag{border-color:#596f9a;color:#c8d8ff;background:rgba(78,101,151,.14)}.tipCombatTag.intCombatTag,.combatInspectorTag.intCombatTag{border-color:#80699f;color:#e4d4ff;background:rgba(112,83,154,.14)}.tipCombatTag.controlCombatTag,.combatInspectorTag.controlCombatTag{border-color:#5d7d85;color:#c9edf2;background:rgba(80,127,135,.13)}.tipCombatTag.cleanCombatTag,.combatInspectorTag.cleanCombatTag{border-color:rgba(255,96,96,.45);color:#ff8b8b;background:rgba(255,96,96,.08)}
.magicChannelValue{font-weight:900}.magicChannelValue.magicElement-fire{color:#ff665f}.magicChannelValue.magicElement-ice{color:#75d8ff}.magicChannelValue.magicElement-electric{color:#ffd75e}.magicChannelValue.magicElement-pure{color:#c9b8ff}


/* V25.1 — magic/INT visual semantics and magic overview */
.entityNameMagic{color:#75d8ff!important}
.entityNameInt{color:#ff9ccf!important}
.entityNameMagic.entityNameInt{color:#ff9ccf!important}
.magicEffectsOverview{display:grid;gap:8px}.magicEffectsGroup{border:1px solid #263c58;background:#0a1421;border-radius:10px;padding:8px}.magicEffectsGroupTitle{display:block;color:#9fb5ce;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.magicEffectTags{display:flex;flex-wrap:wrap;gap:5px}.magicEffectTag{border:1px solid #516f9b;background:rgba(69,99,149,.14);color:#cfe1ff;border-radius:999px;padding:4px 7px;font-size:9px;line-height:1.2}.magicEffectTag b{color:#75d8ff}.magicEffectEmpty{color:#657a93;font-size:10px}.buildMagicEffectsBlock:not(.hasMagicEffects){opacity:.88}
.v234PathButton.allValue{gap:0!important}
@media(max-width:760px){.magicEffectsOverview{grid-template-columns:1fr}.entityNameMagic,.entityNameInt{font-weight:850}}

/* V25.2 — quiet empty combat layers */
.combatMuted{color:var(--muted,#8a94a6);font-weight:500;opacity:.52}


/* V25.3 — compact combat summaries, candidate type filters, run semantic filters, overview importance */
.modStageDisclosure>.modLine>strong{max-width:58%;white-space:normal;line-height:1.25}
.stageCandidateFilters{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:4px 0 5px;border-bottom:1px solid rgba(255,255,255,.045);margin-bottom:1px}
.stageFilterBtn{flex:1 1 auto;min-width:0;width:auto;height:25px;padding:0 5px;border:1px solid #314960;border-radius:7px;background:#0d1927;color:#8ea3ba;font-size:7.4px;font-weight:950;cursor:pointer;line-height:1;transition:.12s ease;white-space:nowrap}
.stageFilterBtn:hover:not(:disabled),.stageFilterBtn.active{color:#fff;border-color:#6d89a8;background:#1a2a3d;box-shadow:0 0 0 1px rgba(125,163,201,.12)}
.stageFilterBtn:disabled{opacity:.22;cursor:default}
.stageFilter-all{flex-grow:.7}.stageFilter-ult{border-color:#67508f;color:#cdb7f5}.stageFilter-item{border-color:#42688d;color:#9dccf4}.stageFilter-artifact{border-color:#8a6740;color:#f2c994}.stageFilter-rune{border-color:#436f80;color:#9ed8e6}.stageFilter-passive{border-color:#4f745e;color:#a8d9b5}.stageFilter-class{border-color:#765578;color:#d8add9}.stageFilter-apex{border-color:#8b7337;color:#edd47d}.stageFilter-special{border-color:#805d42;color:#f2bf8f}.stageFilter-diamond{border-color:#727985;color:#d7dde7}.stageFilter-curse{border-color:#7e4456;color:#f1a6b9}
.stageFilterMobile{display:none}
.abilityPowerRating{color:#ff5d65;font-weight:950;margin-left:3px}
.stageCandidateRow[hidden]{display:none!important}
#typeTabs .specialTypeWrap{display:inline-flex}
#typeTabs .magicOnlyTab,#typeTabs .intOnlyTab{width:32px;min-width:32px;height:32px;padding:0!important;justify-content:center;font-weight:950}
#typeTabs .magicOnlyTab{border-color:#5c9ccc;color:#75d8ff;background:rgba(75,133,177,.12)}
#typeTabs .intOnlyTab{border-color:#a5638b;color:#ff9ccf;background:rgba(174,91,137,.11);font-size:9px}
#typeTabs .magicOnlyTab.active{background:#75d8ff;color:#07131f;border-color:#75d8ff}
#typeTabs .intOnlyTab.active{background:#ff9ccf;color:#1b0a13;border-color:#ff9ccf}
.magicEffectsOverview{grid-template-columns:repeat(3,minmax(0,1fr))}
.selCardImportance{position:absolute;right:43px;bottom:4px;z-index:1;border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:2px 5px;font-size:6.6px;font-weight:900;line-height:1.15;letter-spacing:.02em;pointer-events:none;opacity:.78;background:#0b1622;color:#7d91a7;white-space:nowrap}
.selCardImportance.importanceCore{color:#ffd778;border-color:rgba(255,215,120,.33);background:rgba(110,82,20,.22);opacity:.96}
.selCardImportance.importanceSupport{color:#9fd6b5;border-color:rgba(103,186,137,.28);background:rgba(34,95,59,.18)}
.selCardImportance.importancePeripheral{color:#72859a;border-color:rgba(105,128,153,.18);opacity:.62}
.selCardImportance.importancePending{display:none}
@media(max-width:760px){.magicEffectsOverview{grid-template-columns:1fr}.stageFilterBtn{flex:0 0 24px;width:24px;height:24px;padding:0;font-size:7.5px}.stageFilter-all{flex-basis:30px;width:30px}.stageFilterDesktop{display:none}.stageFilterMobile{display:inline}.selCardImportance{right:37px;bottom:3px;font-size:6px;padding:2px 4px}.modStageDisclosure>.modLine>strong{max-width:56%}}


/* V25.4 — merged item/artifact combat filter + importance tag in stat row */
.stageCandidateFilters{flex-wrap:nowrap;gap:4px;overflow:hidden}
.stageFilter-artifact{display:none!important}
.selCardStats{margin-top:auto}
.selCardImportance{position:static;right:auto;bottom:auto;z-index:auto;display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:3px 6px;font-size:6.5px;font-weight:900;line-height:1;letter-spacing:.02em;pointer-events:none;opacity:.78;background:#0b1622;color:#7d91a7;white-space:nowrap;text-transform:none}
.selCardImportance.importanceCore{color:#ffd778;border-color:rgba(255,215,120,.33);background:rgba(110,82,20,.22);opacity:.96}
.selCardImportance.importanceSupport{color:#9fd6b5;border-color:rgba(103,186,137,.28);background:rgba(34,95,59,.18)}
.selCardImportance.importancePeripheral{color:#72859a;border-color:rgba(105,128,153,.18);opacity:.62}
.selCardImportance.importancePending{display:none}
@media(max-width:760px){.stageCandidateFilters{gap:4px;overflow-x:auto}.stageFilterBtn{flex-basis:23px;width:23px;height:23px;font-size:7.2px}.stageFilter-all{flex-basis:29px;width:29px}.selCardImportance{font-size:6px;padding:3px 5px}}
.selCardStats .selCardImportance{text-transform:none}


/* V25.5 — compact coverage matrix inside the approved defense layer. */
.controlCoverageMatrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-width:min(420px,100%)}
.controlCoverageMatrix span{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 7px;border:1px solid rgba(120,145,170,.22);border-radius:7px;background:rgba(12,24,36,.35)}
.controlCoverageMatrix small{font-size:10px;line-height:1.15;color:var(--muted,#91a2b2)}
.controlCoverageMatrix b{font-size:11px;white-space:nowrap}
@media(max-width:760px){.controlCoverageMatrix{grid-template-columns:1fr}.controlCoverageMatrix span{padding:3px 6px}}

/* V25.6 — compact desktop composition and build-card header actions. */
.panelTitleActions{display:flex;align-items:center;gap:7px;margin-left:auto}
.buildCardInfoIcon{flex:0 0 auto}
@media(min-width:761px){
  #skillList.skillPicked{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .extrasGrid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:start!important}
  .wrap[data-dbui-view="combat"] aside.panel>.panelBody{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
  .wrap[data-dbui-view="combat"] #heroStatsBlock{grid-column:1/-1}
  .wrap[data-dbui-view="combat"] #attackAnalysisBlock{grid-column:1}
  .wrap[data-dbui-view="combat"] #defenseAnalysisBlock{grid-column:2}
  .wrap[data-dbui-view="combat"] #attackAnalysisBlock,.wrap[data-dbui-view="combat"] #defenseAnalysisBlock{min-width:0;margin:0}
}
@media(max-width:760px){
  #skillList.skillPicked{grid-template-columns:1fr!important}
  .extrasGrid{grid-template-columns:1fr!important}
  .wrap[data-dbui-view="combat"] aside.panel>.panelBody{display:block!important}
}

/* V25.9 — one-tap catalog search clearing */
.catalogSearchField{position:relative;display:flex;flex:1;min-width:240px}.catalogSearchField .search{min-width:0;padding-right:38px}.catalogSearchClear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:#94a8c0;font-size:21px;line-height:1;cursor:pointer}.catalogSearchClear:hover,.catalogSearchClear:focus-visible{background:#1b2b40;color:#fff;outline:none}.catalogSearchField .search:placeholder-shown+.catalogSearchClear{opacity:0;pointer-events:none}@media(max-width:760px){.catalogSearchField{min-width:0;width:100%;margin-bottom:8px}.catalogSearchField .search{margin-bottom:0}}

/* V26.2 — desktop typography +30%; component widths are unchanged */
@media (min-width:1024px){
.kicker{font-size:15.6px!important}
.hero h1{font-size:clamp(36.4px,5.2vw,65px)!important}
.rule b{font-size:18.2px!important}
.rule span{font-size:15.6px!important}
.budgetBox input{font-size:20.8px!important}
.panelHead h2{font-size:26px!important}
.buildCostSummary{font-size:14.3px!important}
.panelHead p{font-size:15.6px!important}
.qualityBadge{font-size:16.9px!important}
.qualityBadge small{font-size:13px!important}
.stepNum{font-size:15.6px!important}
.stepTitle b{font-size:18.2px!important}
.hint{font-size:14.3px!important}
.slotLabel{font-size:14.3px!important}
.rankctl span,.lvlctl span{font-size:15.6px!important}
.cost{font-size:14.3px!important}
.tab{font-size:15.6px!important}
th{font-size:13px!important}
td{font-size:15.6px!important}
.name{font-size:16.9px!important}
.mini{font-size:14.3px!important}
.badge{font-size:13px!important}
.summaryTitle b{font-size:16.9px!important}
.summaryTitle span{font-size:14.3px!important}
.money{font-size:15.6px!important}
.selItem b{font-size:14.3px!important}
.selItem small{font-size:13px!important}
.selCost{font-size:14.3px!important}
.empty{font-size:15.6px!important}
.check{font-size:14.3px!important}
.chainBox{font-size:14.3px!important}
.extraBox label{font-size:14.3px!important}
.notice{font-size:14.3px!important}
.tip h3{font-size:18.2px!important}
.tipMeta{font-size:13px!important}
.tipMini{font-size:15.6px!important}
.tipDesc{font-size:14.3px!important}
.tipStars{font-size:14.3px!important}
.footer{font-size:14.3px!important}
.metaBadge{font-size:13px!important}
.skillName{font-size:15.6px!important}
.skillEffect{font-size:13px!important}
.skillCtl span{font-size:14.3px!important}
.metaTotal{font-size:13px!important}
.slotStats span{font-size:11.7px!important}
.assistantTitle b{font-size:14.3px!important}
.recommend b{font-size:14.3px!important}
.recommend small{font-size:11.7px!important}
.recommend button{font-size:13px!important}
.flowCell h5{font-size:11.7px!important}
.flowCell div{font-size:13px!important}
.eventChip{font-size:11.7px!important}
.statCard b{font-size:23.4px!important}
.statCard span{font-size:11.7px!important}
.statCard small{font-size:11.7px!important}
.combatControls label{font-size:11.7px!important}
.combatControls input[type=number],.combatControls select{font-size:13px!important}
.pipe{font-size:11.7px!important}
.applied{font-size:11.7px!important}
.manualGrid label{font-size:11.7px!important}
.panelHead .formulaHint{font-size:13px!important}
.sectionTop b{font-size:15.6px!important}
.sectionBP{font-size:14.3px!important}
.bpTag{font-size:11.7px!important}
.lpTag{font-size:11.7px!important}
.statTag{font-size:11.7px!important}
.addSlot{font-size:14.3px!important}
.controlGroup span{font-size:13px!important}
.gearGroupTitle{font-size:14.3px!important}
.bpBig{font-size:33.8px!important}
.bpBreakdown span{font-size:11.7px!important}
.pickerOpt b{font-size:14.3px!important}
.pickerOpt small{font-size:11.7px!important}
.pickerEmpty{font-size:13px!important}
.extraCat h4{font-size:14.3px!important}
.extraCard b{font-size:13px!important}
.modCol h4{font-size:13px!important}
.modLine{font-size:13px!important}
.modNotes{font-size:11.7px!important}
.mutedSmall{font-size:11.7px!important}
.summaryBP{font-size:13px!important}
.dockCounter{font-size:13px!important}
.artifactPickLabel{font-size:10.4px!important}
.artifactChoice .pickerBtn{font-size:13px!important}
.raritySelect{font-size:13px!important}
.rarityTag{font-size:11.7px!important}
.ratingHead strong{font-size:20.8px!important}
.ratingMetric{font-size:11.7px!important}
.abstractRating b{font-size:13px!important}
.abstractRating small{font-size:10.4px!important}
.combatPassportDisclosure summary{font-size:14.3px!important}
.combatPassportDisclosure summary:before{font-size:15.6px!important}
.combatPassportBody{font-size:11.7px!important}
.combatEmpty{font-size:13px!important}
.modGroupLabel{font-size:10.4px!important}
.stagePill{font-size:10.4px!important}
.presetLoaderLabel{font-size:14.3px!important}
.presetLoaderDesc{font-size:13px!important}
.headerBP{font-size:14.3px!important}
.dockMetric{font-size:13px!important}
.dockReset{font-size:13px!important}
.intelTop{font-size:13px!important}
.intelTop strong{font-size:15.6px!important}
.intelCheckLabel{font-size:10.4px!important}
.intelCheckTag{font-size:10.4px!important}
.intelXP{font-size:11.7px!important}
.intelXP strong{font-size:13px!important}
.rarityGrid small{font-size:10.4px!important}
.rarityGrid b{font-size:13px!important}
.priceStrip>span{font-size:10.4px!important}
.priceStrip strong{font-size:13px!important}
.goldTag{font-size:11.7px!important}
.goldInline{font-size:11.7px!important}
.presetOptTitle{font-size:13px!important}
.presetOptTitle em{font-size:11.7px!important}
.presetBuildPicker .pickerOpt small{font-size:10.4px!important}
.indirectNote{font-size:11.7px!important}
.magicKindTitle{font-size:13px!important}
.refGuideTitle{font-size:19.5px!important}
.refCard h4{font-size:14.3px!important}
.refCard p{font-size:13px!important}
.refGuideNote{font-size:13px!important}
.refGuideToggleIcon{font-size:23.4px!important}
.dockSave{font-size:13px!important}
.tableWrap th,.tableWrap td{font-size:14.3px!important}
.tableWrap th{font-size:11.7px!important}
.tableWrap .mini{font-size:13px!important}
.tableWrap .name{font-size:15.6px!important}
.tableWrap .badge{font-size:11.7px!important}
.tableWrap td:nth-child(5){font-size:13px!important}
.generatorBudget>span{font-size:11.7px!important}
.generatorBudget input{font-size:16.9px!important}
.randomBuildHint{font-size:13px!important}
.ratingInfo{font-size:13px!important}
.combatMetersTitle{font-size:10.4px!important}
.combatMeterHead{font-size:11.7px!important}
.combatMeterHead b{font-size:11.7px!important}
.savedBuildsHead b{font-size:15.6px!important}
.savedBuildsHead span{font-size:11.7px!important}
.savedBuildsHeadActions #savedBuildsCount{font-size:14.3px!important}
.savedBuildsTable th,.savedBuildsTable td{font-size:11.7px!important}
.savedBuildName{font-size:11.7px!important}
.savedLoadBtn{font-size:11.7px!important}
.priceTipRow span{font-size:14.3px!important}
.priceTipRow small{font-size:11.7px!important}
.priceTipRow b{font-size:14.3px!important}
.priceTipTotal{font-size:14.3px!important}
.catalogSortBtn::after{font-size:11.7px!important}
.synergyLegendHead{font-size:15.6px!important}
.synergyLegendMark{font-size:16.9px!important}
.synergyLegendText{font-size:15.6px!important}
.builderDisclosureSummary:before,.calcDisclosureSummary>div:first-child>b:before,.summaryDisclosure>summary b:before{font-size:14.3px!important}
.stageHint{font-size:11.7px!important}
.stageCandidateIntro{font-size:10.4px!important}
.stageCandidateName b{font-size:11.7px!important}
.stageCandidateName small{font-size:10.4px!important}
.stageCandidateRow>strong{font-size:11.7px!important}
.stageCandidateEmpty{font-size:11.7px!important}
.selCardTop b{font-size:14.3px!important}
.selCardMeta{font-size:9.75px!important}
.selCardStats span{font-size:8.45px!important}
.selCardRemove,.selCardRankBtn{font-size:14.3px!important}
.dbuiLabel{font-size:14.3px!important}
.dbuiInlineLegend{font-size:11.7px!important}
.dbuiQualityScore{font-size:39px!important}
.dbuiQualityText{font-size:16.9px!important}
.dbuiSystem{font-size:15.6px!important}
.dbuiPathCell small{font-size:11.7px!important}
.dbuiPathCell b{font-size:19.5px!important}
.dbuiPathCell span{font-size:13px!important}
.dbuiChip{font-size:14.3px!important}
.dbuiChip b{font-size:14.3px!important}
.dbuiChip small{font-size:11.7px!important}
.dbuiTab{font-size:15.6px!important}
.dbuiQuickPreset .presetLoaderLabel{font-size:11.7px!important}
.presetOptTitle .presetPathTag{font-size:10.4px!important}
.combatDetailBlock>.combatBlockHead{font-size:16.9px!important}
.combatDetailBlock>.combatBlockHead strong{font-size:19.5px!important}
.dbuiHoverHelp h4,.dbuiPreviewPop h4{font-size:14.3px!important}
.dbuiHoverHelp p,.dbuiPreviewPop p{font-size:13px!important}
.dbuiHoverHelp .helpMini{font-size:11.7px!important}
.dbuiPreviewMetric small{font-size:10.4px!important}
.dbuiPreviewMetric b{font-size:14.3px!important}
.dbuiInspectorHead small{font-size:11.7px!important}
.dbuiInspectorHead h3{font-size:23.4px!important}
.dbuiInspectorClose{font-size:23.4px!important}
.dbuiInspectorTag{font-size:11.7px!important}
.dbuiInspectorSection h4{font-size:13px!important}
.dbuiInspectorSection p{font-size:14.3px!important}
.dbuiInspectorFact small{font-size:10.4px!important}
.dbuiInspectorFact b{font-size:14.3px!important}
.dbuiInspectorRelation{font-size:13px!important}
.dbuiInspectorHint{font-size:11.7px!important}
.dbuiNarrativeMain{font-size:15.6px!important}
.dbuiNarrativeSub{font-size:13px!important}
.dbuiNarrativeLinks{font-size:13px!important}
.dbovHeader h2{font-size:clamp(23.4px,2.015vw,33.8px)!important}
.dbovHeader .qualityBadge{font-size:clamp(19.5px,1.885vw,29.9px)!important}
.dbovHeader .qualityBadge small{font-size:.66em!important}
.dbovLabel{font-size:11.7px!important}
.dbovDnaCopy h3{font-size:clamp(23.4px,2.47vw,32.5px)!important}
.dbovDnaCopy .dbuiSystem{font-size:14.3px!important}
.dbovFormulaTitle{font-size:10.4px!important}
.dbovFormulaPart small{font-size:9.1px!important}
.dbovFormulaPart b{font-size:14.3px!important}
.dbovFormulaTimes{font-size:20.8px!important}
.dbovDnaFormula p{font-size:11.7px!important}
.dbovCoreHead .dbovLabel{font-size:16.9px!important}
.dbovEmptyCore{font-size:13px!important}
.dbovStepNum{font-size:14.3px!important}
.dbovStepPath{font-size:8.45px!important}
.dbovStep h4{font-size:clamp(19.5px,1.885vw,27.3px)!important}
.dbovStepSource b{font-size:11.7px!important}
.dbovStepSource small{font-size:9.1px!important}
.dbovDiamondCopy b{font-size:11.05px!important}
.dbovDiamondCopy small{font-size:8.06px!important}
.dbovMutator span{font-size:6.7px!important}
.dbovSupportHead strong{font-size:13px!important}
.dbovSupport .dbuiChip{font-size:10.4px!important}
.dbovSupport .dbuiChip small{font-size:8.06px!important}
.dbovSupport .dbuiChip b{font-size:10.14px!important}
.dbovSupportMeta{font-size:10.4px!important}
.budgetDesktop>.muted{font-size:9.75px!important}
.budgetDesktop .preset{font-size:11.05px!important}
.budgetDesktop .budgetBox input{font-size:11.7px!important}
.budgetDesktop .budgetBox .muted{font-size:10.4px!important}
.dbovDiamondCopy em{font-size:7.41px!important}
.dbovMutator span small{font-size:5.85px!important}
.dbovStep.pending-stage h4{font-size:clamp(16.9px,1.456vw,22.1px)!important}
.dbovDiamond.pending-diamond .dbovDiamondCopy b{font-size:clamp(9.1px,.66vw,13px)!important}
.alt2QualityHead small{font-size:10.4px!important}
.alt2QualityHead b{font-size:20.8px!important}
.alt2QualityClose{font-size:22.1px!important}
.alt2QualityRow span{font-size:13px!important}
.alt2QualityRow b{font-size:14.3px!important}
.alt2QualityFoot{font-size:11.7px!important}
.summaryTitle .ratingInfo{font-size:13px!important}
.sectionGuidePanel .sectionGuideBlock b{font-size:14.3px!important}
.sectionGuidePanel .sectionGuideBlock p{font-size:13px!important}
.typeTabWrap.hasActiveInfo .typeInfoIcon{font-size:13px!important}
.check[data-structure-role]::after{font-size:9.1px!important}
.inheritedCurseName i{font-size:13px!important}
.inheritedCurseEffect{font-size:11.7px!important}
.inheritedLock{font-size:13px!important}
.inheritedCurseBadge i{font-size:11.7px!important}
.inheritedCurseBadge b{font-size:11.7px!important}
.inheritedCurseBadge small{font-size:10.4px!important}
.manualCurseEffect{font-size:11.7px!important}
.v221InspectorRoleLabel{font-size:11.7px!important}
.v233SuitButton:after{font-size:19.5px!important}
.v233SuitOption small{font-size:11.7px!important}
.v234PathButton:after{font-size:19.5px!important}
.v233SuitButton,.v234PathButton{font-size:14.3px!important}
.v233SuitButton .v233SuitLabel,.v234PathButton .v234PathLabel{font-size:14.3px!important}
.extraCompactEffect{font-size:11.7px!important}
.v237BuildRosterTitle{font-size:11.7px!important}
.v237BuildRosterName{font-size:9.1px!important}
.v237BuildRoster.isDense .v237BuildRosterName{font-size:9.1px!important}
.v237BuildRosterEmpty{font-size:13px!important}
.v233SuitOption,.v234PathOption{font-size:18.2px!important}
.v233SuitOption>span:not(.v233SuitIcon),.v234PathOption>span:not(.v234PathIcon){font-size:18.2px!important}
.extraCompactEffect,.manualCurseEffect,.inheritedCurseEffect{font-size:11.7px!important}
.craftHead small{font-size:14.3px!important}
.craftHead b{font-size:28.6px!important}
.craftHead span{font-size:16.9px!important}
.craftTier{font-size:36.4px!important}
.craftTier span{font-size:14.3px!important}
.craftIngIcon b{font-size:11.7px!important}
.craftIngText strong{font-size:18.2px!important}
.craftIngText span{font-size:15.6px!important}
.craftFoot{font-size:14.3px!important}
.craftBaseReq small{font-size:13px!important}
.craftBaseReq strong{font-size:22.1px!important}
.craftBaseReq span{font-size:15.6px!important}
.craftBaseReq>b{font-size:35.1px!important}
.powerRatingBadge{font-size:.88em!important}
.tipCombatTag,.combatInspectorTag{font-size:10.4px!important}
.magicEffectsGroupTitle{font-size:13px!important}
.magicEffectTag{font-size:11.7px!important}
.magicEffectEmpty{font-size:13px!important}
.stageFilterBtn{font-size:9.62px!important}
#typeTabs .intOnlyTab{font-size:11.7px!important}
.selCardImportance{font-size:8.45px!important}
.controlCoverageMatrix small{font-size:13px!important}
.controlCoverageMatrix b{font-size:14.3px!important}
.catalogSearchClear{font-size:27.3px!important}
[style*="font-size:6px"]{font-size:7.8px!important}
[style*="font-size:7px"]{font-size:9.1px!important}
[style*="font-size:8px"]{font-size:10.4px!important}
[style*="font-size:9px"]{font-size:11.7px!important}
[style*="font-size:10px"]{font-size:13px!important}
[style*="font-size:11px"]{font-size:14.3px!important}
[style*="font-size:12px"]{font-size:15.6px!important}
[style*="font-size:13px"]{font-size:16.9px!important}
[style*="font-size:14px"]{font-size:18.2px!important}
[style*="font-size:15px"]{font-size:19.5px!important}
[style*="font-size:16px"]{font-size:20.8px!important}
[style*="font-size:17px"]{font-size:22.1px!important}
[style*="font-size:18px"]{font-size:23.4px!important}
[style*="font-size:19px"]{font-size:24.7px!important}
[style*="font-size:20px"]{font-size:26px!important}
[style*="font-size:21px"]{font-size:27.3px!important}
[style*="font-size:22px"]{font-size:28.6px!important}
[style*="font-size:23px"]{font-size:29.9px!important}
[style*="font-size:24px"]{font-size:31.2px!important}
[style*="font-size:25px"]{font-size:32.5px!important}
[style*="font-size:26px"]{font-size:33.8px!important}
[style*="font-size:27px"]{font-size:35.1px!important}
[style*="font-size:28px"]{font-size:36.4px!important}
[style*="font-size:29px"]{font-size:37.7px!important}
[style*="font-size:30px"]{font-size:39px!important}
[style*="font-size:31px"]{font-size:40.3px!important}
[style*="font-size:32px"]{font-size:41.6px!important}
[style*="font-size:33px"]{font-size:42.9px!important}
[style*="font-size:34px"]{font-size:44.2px!important}
[style*="font-size:35px"]{font-size:45.5px!important}
[style*="font-size:36px"]{font-size:46.8px!important}
[style*="font-size:37px"]{font-size:48.1px!important}
[style*="font-size:38px"]{font-size:49.4px!important}
[style*="font-size:39px"]{font-size:50.7px!important}
[style*="font-size:40px"]{font-size:52px!important}
button,input,select,textarea,.pickerBtn,.pickerOpt{box-sizing:border-box;max-width:100%;min-width:0}
.pickerBtn,.pickerOpt,.tab,.badge,.dockMetric,.qualityBadge{overflow:hidden;text-overflow:ellipsis}
}
