/* 自定义背景纹理和图案 */

/* 轻柔的网格背景 */
.theme-light .middle_area {
  background-image: radial-gradient(#f7d1ec 1px, transparent 1px), 
                    radial-gradient(#f7d1ec 1px, transparent 1px);
  background-size: 20px 20px;
  background-position: 0 0, 10px 10px;
}

.theme-dark .middle_area {
  background-image: radial-gradient(rgba(255, 255, 255, 0.07) 1px, transparent 1px), 
                    radial-gradient(rgba(255, 255, 255, 0.07) 1px, transparent 1px);
  background-size: 20px 20px;
  background-position: 0 0, 10px 10px;
}

.theme-green .middle_area {
  background-image: radial-gradient(rgba(121, 190, 110, 0.2) 1px, transparent 1px), 
                    radial-gradient(rgba(121, 190, 110, 0.2) 1px, transparent 1px);
  background-size: 20px 20px;
  background-position: 0 0, 10px 10px;
}

/* 装饰性元素 */
.wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 200px;
  height: 200px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200" viewBox="0 0 200 200"><path d="M160,0 C180,30 200,80 200,120 C170,130 130,160 120,200 C100,170 60,130 0,140 C20,100 40,40 40,0 C80,20 120,20 160,0 Z" fill="rgba(255,150,230,0.05)"/></svg>');
  background-repeat: no-repeat;
  pointer-events: none;
  z-index: -1;
}

.theme-dark .wrapper::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200" viewBox="0 0 200 200"><path d="M160,0 C180,30 200,80 200,120 C170,130 130,160 120,200 C100,170 60,130 0,140 C20,100 40,40 40,0 C80,20 120,20 160,0 Z" fill="rgba(170,120,255,0.05)"/></svg>');
}

.theme-green .wrapper::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200" viewBox="0 0 200 200"><path d="M160,0 C180,30 200,80 200,120 C170,130 130,160 120,200 C100,170 60,130 0,140 C20,100 40,40 40,0 C80,20 120,20 160,0 Z" fill="rgba(100,180,100,0.05)"/></svg>');
}

.wrapper::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 180px;
  height: 180px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="180" height="180" viewBox="0 0 180 180"><path d="M0,60 C40,30 100,20 140,0 C160,40 160,100 180,140 C140,160 80,160 40,180 C20,140 20,100 0,60 Z" fill="rgba(255,150,230,0.05)"/></svg>');
  background-repeat: no-repeat;
  pointer-events: none;
  z-index: -1;
}

.theme-dark .wrapper::after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="180" height="180" viewBox="0 0 180 180"><path d="M0,60 C40,30 100,20 140,0 C160,40 160,100 180,140 C140,160 80,160 40,180 C20,140 20,100 0,60 Z" fill="rgba(170,120,255,0.05)"/></svg>');
}

.theme-green .wrapper::after {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="180" height="180" viewBox="0 0 180 180"><path d="M0,60 C40,30 100,20 140,0 C160,40 160,100 180,140 C140,160 80,160 40,180 C20,140 20,100 0,60 Z" fill="rgba(100,180,100,0.05)"/></svg>');
}

/* 工具图标美化 */
#tools_container button::before {
  content: "";
  position: absolute;
  top: -3px;
  left: -3px;
  right: -3px;
  bottom: -3px;
  background: radial-gradient(circle at 50% 50%, var(--active-button-color) 0%, transparent 70%);
  opacity: 0;
  z-index: -1;
  border-radius: 12px;
  transition: opacity 0.3s ease;
}

#tools_container button:hover::before {
  opacity: 0.3;
}

#tools_container button.active::before {
  opacity: 0.5;
}

/* 添加鼠标悬停提示装饰 */
.ui_tooltip::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(to right, var(--active-button-color), transparent);
  border-radius: 3px 3px 0 0;
}

/* 可爱的选择框效果 */
.selection_point {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50%;
  background-color: var(--active-button-color);
  border: 1px solid white !important;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
}

/* 弹出框标题美化 */
#popups .title {
  background: linear-gradient(to right, var(--block-header-background-color), transparent);
  border-bottom: 1px solid var(--block-border-color);
  padding: 10px 15px;
  border-radius: 12px 12px 0 0;
}

/* 弹出框底部按钮区域美化 */
#popups .buttons {
  background-color: rgba(0, 0, 0, 0.02);
  border-top: 1px solid var(--block-border-color);
  padding: 10px;
  border-radius: 0 0 12px 12px;
}

/* 增加层面板的按钮动效 */
.layers_add {
  background-color: var(--button-background) !important;
  border-radius: 50% !important;
  width: 32px !important;
  height: 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.3s ease !important;
}

.layers_add:hover {
  transform: rotate(180deg) !important;
  background-color: var(--button-hover-background) !important;
}

/* 美化透明背景表示效果 */
.transparent-grid.squares {
  background-image: linear-gradient(45deg, #f0f0f0 25%, transparent 25%),
                    linear-gradient(-45deg, #f0f0f0 25%, transparent 25%),
                    linear-gradient(45deg, transparent 75%, #f0f0f0 75%),
                    linear-gradient(-45deg, transparent 75%, #f0f0f0 75%);
  background-size: 16px 16px;
  background-position: 0 0, 0 8px, 8px -8px, -8px 0px;
} 