.tabs{margin-bottom:var(--space-3);flex-wrap:wrap;gap:6px;padding:6px;display:flex}.tabs button{cursor:pointer;height:38px;color:var(--fg);font:500 var(--text-sm) var(--font-body);background:0 0;border:1px solid #0000;border-radius:10px;padding:0 14px}.tabs button[aria-pressed=true]{color:var(--accent);background:#d9b35f2e;border-color:#d9b35f80}.tabs small{color:var(--fg-faint);margin-left:4px}.layout{gap:var(--space-6);padding-bottom:var(--space-8);grid-template-columns:auto minmax(280px,1fr);align-items:start;display:grid}.boardwrap{padding:var(--space-4)}.board{--ns:40px;grid-template-columns:repeat(15, var(--ns));grid-template-rows:repeat(15, var(--ns));gap:2px;display:grid}.node{width:var(--ns);height:var(--ns);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0;position:relative}.node img{filter:grayscale(.85)brightness(.55);width:100%;height:100%;transition:filter .12s;display:block}.node.on img{filter:none}.node.can img{filter:grayscale(.3)brightness(.85)}.node.can{outline:1px dashed #d9b35f99}.node.sk img{filter:grayscale(.9)brightness(.45);border-radius:4px}.node.sk.on img{filter:none}.node.sk{box-shadow:0 0 0 2px var(--gc,#5ea8ff) inset;border-radius:6px;padding:2px}.node.sk.on{box-shadow:0 0 0 2px var(--gc,#5ea8ff) inset, 0 0 10px var(--gc,#5ea8ff)}.node.sk.Rare{--gc:#3aa0ff}.node.sk.Legend{--gc:#2fd1b0}.node.sk.Unique{--gc:#e0a33a}.node.sk.Epic{--gc:#ff6c3a}.node.sk:after{display:none}.tools{margin-bottom:var(--space-3);font-size:var(--text-sm);color:var(--fg-muted);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 12px;display:flex}.tools b{color:#6fe3f0}.tools label{cursor:pointer;align-items:center;gap:6px;display:flex}.tools .zoom{align-items:center;gap:6px;display:flex}.tools .zoom button{border:1px solid var(--border);background:var(--bg-hover);width:32px;height:32px;color:var(--fg);cursor:pointer;border-radius:8px;font-size:16px}.tools .grow{flex:1}.tools .btn{cursor:pointer;border:1px solid var(--border);background:var(--bg-hover);height:34px;color:var(--fg);font:600 var(--text-xs) var(--font-body);border-radius:8px;padding:0 14px}.tools .btn.pri{color:#fff;background:#0f8a6a;border-color:#0f8a6a}.saves{font-size:var(--text-sm);margin:0;padding:0;list-style:none}.saves li{align-items:center;gap:6px;padding:3px 0;display:flex}.saves li button{color:var(--link);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0}.saves li .del{color:var(--fg-faint);margin-left:auto}.node.K:after{content:"+";font:700 13px var(--font-body);color:#fff;text-shadow:0 0 3px #000;position:absolute;top:-2px;right:1px}.node:focus-visible{outline:2px solid var(--ring)}.board-head{gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.board-head h2{font:700 var(--text-xl) var(--font-heading);color:#fff;margin:0}.board-head span{color:var(--fg-muted);font-size:var(--text-sm)}.btns{margin-top:var(--space-3);flex-wrap:wrap;gap:6px;display:flex}.btns button{cursor:pointer;background:var(--bg-hover);border:1px solid var(--border);height:34px;color:var(--fg);font:500 var(--text-xs) var(--font-body);border-radius:8px;padding:0 12px}.side{padding:var(--space-4);top:var(--space-4);position:sticky}.side h3{margin:var(--space-4) 0 var(--space-2);font:600 var(--text-sm) var(--font-body);color:var(--accent)}.side h3:first-child{margin-top:0}.bar{font-size:var(--text-sm);margin-bottom:8px}.bar div{justify-content:space-between;display:flex}.bar i{background:var(--bg-raised);border-radius:3px;height:6px;margin-top:3px;display:block;overflow:hidden}.bar i b{background:var(--accent);height:100%;display:block}.bar.over i b{background:var(--danger)}.bar.over div{color:var(--danger)}dl{gap:3px var(--space-3);font-size:var(--text-sm);grid-template-columns:1fr auto;margin:0;display:grid}dt{color:var(--fg-muted)}dd{text-align:right;margin:0;font-weight:600}.tip{z-index:20;pointer-events:none;border:1px solid var(--border-strong);max-width:260px;font-size:var(--text-sm);box-shadow:var(--shadow-tooltip);background:#121725;border-radius:8px;padding:8px 10px;position:fixed}.tip b{color:var(--accent);display:block}.hint{color:var(--fg-faint);font-size:var(--text-xs)}@media (width<=1000px){.layout{grid-template-columns:1fr}.board{grid-template-rows:none;grid-template-columns:repeat(15,minmax(18px,1fr))}.node{aspect-ratio:1;width:auto;height:auto}.boardwrap{overflow-x:auto}}
