:root{
  --accent:#f3cfd9;
  --bg:#fff;
  --text:#000;
  --beadSize-xs:40px;
  --beadSize-md:64px;
}

#configurator{display:flex;flex-direction:column;gap:1rem;padding-bottom:80px;}
#chain-preview{overflow-x:auto;padding:1rem;background:#fff;border:1px solid #ddd;border-radius:8px;}
#chain-grid{display:flex;align-items:center;gap:4px;min-height:80px;}
#catTabs{display:flex;flex-wrap:nowrap;gap:8px;}
.cat-tabs button{border:1px solid #ccc;background:#f9f9f9;padding:0.5rem;cursor:pointer;display:flex;flex-grow:1;flex-basis:0;justify-content:center;align-items:center;}
.cat-tabs button.active{background:var(--accent);}
#catPanel{display:flex;flex-wrap:wrap;gap:0.5rem;padding:0.5rem;border:1px solid #ddd;border-radius:8px;margin-top:0;height:auto;max-height:none;overflow:visible;background:#fff;}
#catPanel .pal-item img{
  width:80px;
  height:80px;
  object-fit:contain;
  cursor:pointer;
  display:block;
  margin:auto;
}
#catPanel img{transform:none !important;}
#summary{position:sticky;top:0;left:0;width:100%;background:#fff;padding:0.33rem 1rem;border-top:1px solid #ddd;box-shadow:0 -2px 8px rgba(0,0,0,0.15);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0.5rem;margin:0;z-index:100;}
#summary p{margin:0;}
#summary .btn{width:auto;padding:0.25rem 0.75rem;}
