@charset "utf-8";
@media screen and (min-width: 1080px) { 
    /*主页内容 - index_centent*/
    .index_centent{
    	width:1000px;
    	height:100%;
    	margin:0 auto;
    }
}
.draw_article{width:96%; margin:2px auto; background:#323232; padding:1%;}
.draw_article .draw_header h2{color:#fff; margin:0; padding:0; font-size:17px;}
.draw_article .draw_header{width:100%;}
.draw_article .draw_header .select_mode, .draw_article .draw_header .select_mode_type{font-size:16px; color:#000; margin-top:6px;}
.draw_article .draw_header span{display:inline-block; height:26px; line-height:26px; margin-top:8px; border:1px solid #757575; padding:1px 10px; color:#858585; border-radius:2px; font-size:16px;}
.draw_article .draw_header .this_mode, .draw_article .draw_header .this_mode_type, .draw_article .draw_header .this_mode_style{border:1px solid #509e8d; color:#509e8d;}
.draw_article .draw_header .this_type{border:1px solid #509e8d; color:#509e8d;}
.draw_article .draw_header .this_size{border:1px solid #509e8d; color:#509e8d;}
.draw_article .draw_header .divide{border-bottom:1px solid #ccc; margin:16px 0; opacity:0.2;}
.draw_article .draw_header .imagine{color:#c1c1c1;}
.draw_article .draw_header .prompt{border:1px solid #ccc; border-radius:4px; background:#323232; width:98%; margin-top:8px; color:#fff;}
.draw_article .draw_header .noPrompt{border:1px solid #ccc; border-radius:4px; background:#323232; width:98%; margin-top:8px; color:#fff; opacity:0.8; display:none;}
.draw_article .draw_header .list_size span{height:100%; margin:6px 0; padding-top:10px; border-radius:6px;}
.draw_article .draw_header .list_size span section{width:100%; text-align:center;}
.draw_article .draw_header span:hover{border:1px solid green; color:#000;}
.draw_article .draw_header .submit{width:380px; margin-top:10px; height:40px; line-height:40px; font-size:16px; background-color:#35c09f; border-radius:6px; color:#fff;}
.draw_article .draw_header .submit:hover{border:1px solid #000; color:#000;}

@media screen and (min-width:0) and (max-width:600px){
    .draw_article .draw_header .submit{width:100%;}
    body{width:100%;}
}



.jumbotron {
  text-align: center;
  border-bottom: 1px solid #e5e5e5;
  border: 2px dashed #ccc;
      border-radius: 10px !important;
          background: white;
  margin-top:26px;
}

.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#f5f5f5}.jumbotron h1,.jumbotron .h1{color:#444444}.jumbotron p{margin-bottom:15px;font-size:20px;font-weight:200}.jumbotron>hr{border-top-color:#dcdcdc}.container .jumbotron,.container-fluid .jumbotron{border-radius:3px;padding-left:15px;padding-right:15px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-left:60px;padding-right:60px}.jumbotron h1,.jumbotron .h1{font-size:59px}}


.pic_preview {
    width: 108px;
    height: 108px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
.pic_preview .pic_mask {
    display:none;
    height: 100%;
    width: 100%;
    line-height: 100px;
    text-align: center;
    background: rgba(0,0,0,.7);
    font-size: 13px;
    color: white;
}
.pic_preview .danger {
    color: #cb171e;
}

.big_go,.big_del{padding:1px 12px; margin-top:3px;}



.setup_auto{
    background-color: #fff;
    width:390px;
    position: fixed; /* 定位为fixed */
    top: 286px; /* 距顶部50% */
    left: 50%; /* 距左边50% */
    transform: translate(-50%, -50%);
    padding: 22px;
    display: none;
    opacity:1;
}

@media screen and (min-width:0) and (max-width:600px){
    .setup_auto{
        width:92%;
        top: 300px; /* 距顶部50% */
        padding-top: 12px;
        padding: 2%;
    }
}

.aside_h2{padding:6px;}
.aside_h2 h2{margin-top:30px;}



.big_go {
  /* 基础尺寸与字体 */
  padding: 2px 18px;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 2px;
  color: #fff;

  /* 渐变背景，增加立体感 */
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  border: none;
  border-radius: 3px;          /* 圆润的胶囊形状 */
  cursor: pointer;

  /* 柔和阴影 */
  box-shadow: 0 4px 10px rgba(102, 126, 234, 0.4);

  /* 过渡动画，让交互更顺滑 */
  transition: all 0.3s ease;

  /* 禁止选中文字（配合你的 onselectstart） */
  user-select: none;
}

/* 鼠标悬停效果 */
.big_go:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(102, 126, 234, 0.6);
  background: linear-gradient(135deg, #764ba2 0%, #667eea 100%);
}

/* 点击时的反馈 */
.big_go:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(102, 126, 234, 0.4);
}



.big_del {
  /* 基础尺寸与字体 */
  padding: 2px 12px;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 2px;
  color: #fff;

  /* 红色渐变背景 */
  background: linear-gradient(135deg, #f5576c 0%, #e74c3c 100%);
  border: none;
  border-radius: 3px;
  cursor: pointer;

  /* 柔和阴影 */
  box-shadow: 0 4px 10px rgba(245, 87, 108, 0.4);

  /* 过渡动画 */
  transition: all 0.3s ease;

  /* 禁止选中文字 */
  user-select: none;
}

.big_del:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(245, 87, 108, 0.6);
  background: linear-gradient(135deg, #e74c3c 0%, #f5576c 100%);
}

.big_del:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(245, 87, 108, 0.4);
}



/* 基础选择框美化 */
.setup_auto select {
  /* 外观重置 */
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  
  /* 尺寸与内边距 */
  padding: 3px 9px 2px 4px;
  font-size: 15px;
  line-height: 1.4;
  
  /* 字体与颜色 */
  color: #2c3e50;
  background-color: #ffffff;
  
  /* 边框与圆角 */
  border: 1.5px solid #d0d7de;
  border-radius: 6px;
  
  /* 阴影与过渡 */
  box-shadow: 0 1px 3px rgba(0,0,0,0.04);
  transition: all 0.25s ease;
  
  /* 鼠标样式 */
  cursor: pointer;
  
  /* 自定义下拉箭头（使用背景图） */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8.825a.5.5 0 0 1-.354-.146l-4-4a.5.5 0 0 1 .708-.708L6 7.617l3.646-3.646a.5.5 0 0 1 .708.708l-4 4A.5.5 0 0 1 6 8.825z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px;
}

/* 悬停状态 */
.setup_auto select:hover {
  border-color: #a0aab4;
  box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}

/* 聚焦状态 */
.setup_auto select:focus {
  outline: none;
  border-color: #4f8cff;
  box-shadow: 0 0 0 3px rgba(79,140,255,0.15);
}

/* 针对 IE 的降级处理（移除自定义箭头） */
.setup_auto select::-ms-expand {
  display: none;
}

/* 可选：针对 option 的简单美化（部分浏览器支持有限） */
.setup_auto option {
  padding: 8px;
  background: #fff;
  color: #2c3e50;
}


/*Ai抠图*/
.cutoutDiv{
    margin-top:20px;
    margin-bottom:22px;
}

.cutout {
    position: relative;
    top: 4px;
    width: 16px;
    height: 18px;
    border: 1px solid #333;
    border-radius: 3px;
    background: #fff;
}

.objectRm{
    position: relative;
    top: 4px;
    width: 16px;
    height: 18px;
    border: 1px solid #333;
    border-radius: 3px;
    background: #fff;
}

.bigcheck {
    position: relative;
    top: 4px;
    width: 16px;
    height: 18px;
    border: 1px solid #333;
    border-radius: 3px;
    background: #fff;
}
#bigcheckDiv,#cutoutDiv,#objectRmDiv{
    display:inline-block;
    margin-left:2px;
}



.jumbotron .btn {
    padding: 16px 26px;
    font-size: 22px;
    /*
    font-weight: 600;
    color: #ffffff;
    background: linear-gradient(135deg, rgba(67, 233, 123, 0.8) 0%, rgba(56, 249, 215, 0.8) 100%);
    border: none;
    box-shadow: 0 4px 15px rgba(67, 233, 123, 0.4);
    cursor: pointer;
    transition: all 0.3s ease;
    outline: none;
    position: relative;
    overflow: hidden;
    */
}
/*
.jumbotron .btn:hover {
    box-shadow: 0 8px 25px rgba(67, 233, 123, 0.6);
    background: linear-gradient(135deg, #38f9d7 0%, #43e97b 100%);
}
.jumbotron .btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 10px rgba(67, 233, 123, 0.4);
}
.jumbotron .btn:focus-visible {
    box-shadow: 0 0 0 3px rgba(67, 233, 123, 0.5);
}
*/


#downloadBtn{
    padding: 6px 10px;
    background: #667eea;
    color: white;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    transition: background 0.3s;
    margin:10px auto;
    display: none;
}


progress {
  /* 保持宽高不变，仅美化 */
  appearance: none;
  -webkit-appearance: none;
  border: none;
  border-radius: 3px;
  overflow: hidden;
  background-color: #e9ecef;
  position: relative;
}

/* Chrome / Safari 已完成进度 */
progress::-webkit-progress-bar {
  background-color: #e9ecef;
  border-radius: 3px;
}

progress::-webkit-progress-value {
  background: linear-gradient(135deg, #667eea, #764ba2);
  border-radius: 3px;
  box-shadow: 0 0 12px rgba(102, 126, 234, 0.7), 0 0 24px rgba(118, 75, 162, 0.4);
  position: relative;
  animation: shimmer 3s infinite ease-in-out;
}

/* Firefox */
progress::-moz-progress-bar {
  background: linear-gradient(135deg, #667eea, #764ba2);
  border-radius: 3px;
  box-shadow: 0 0 12px rgba(102, 126, 234, 0.7), 0 0 24px rgba(118, 75, 162, 0.4);
}

/* 扫光动画 - 通过渐变位移模拟 */
@keyframes shimmer {
  0% {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 40%, #667eea 50%, #764ba2 100%);
    background-size: 200% 100%;
    background-position: 200% 0;
  }
  100% {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 40%, #667eea 50%, #764ba2 100%);
    background-size: 200% 100%;
    background-position: -200% 0;
  }
}

/* 停止扫光动画 */
progress.no-shimmer::-webkit-progress-value {
  animation: none;
  background: linear-gradient(135deg, #667eea, #764ba2);
  /* 你甚至可以去掉落光，只保留渐变色 */
  box-shadow: none;   /* 可选：去掉光晕 */
}

progress.no-shimmer::-moz-progress-bar {
  /* Firefox 本来就没定义 animation，但可以去掉光晕 */
  box-shadow: none;
}



/* Ai 橡皮擦 */
:root {
    --bg: #f5f5f0;
    --surface: #ffffff;
    --text: #2c2c2c;
    --text-secondary: #6b6b6b;
    --green: #3cb043;
    --green-light: #e8f5e9;
    --green-glow: rgba(60, 176, 67, 0.45);
    --red: #e05555;
    --red-light: #fef0f0;
    --border: #e0e0d8;
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.06);
    --shadow: 0 4px 16px rgba(0, 0, 0, 0.10);
    --shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.14);
    --radius: 14px;
    --radius-sm: 10px;
    --radius-xs: 7px;
    --transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.app-container {
    background-color: #fff;
    width:100%;
    position: absolute; /* 定位为fixed */
    top: 0;
    left:0;
    z-index: 10;
    display: none;
}

.app-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 2px 4px;
    border-bottom: 1px solid var(--border);
    background: #fafaf7;
}
.app-logo {
    width: 35px;
    height: 35px;
    border-radius: var(--radius-xs);
    background: var(--green);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(60,176,67,0.3);
    margin-left:10px;
}
.app-logo svg { width: 22px; height: 22px; fill: #fff; }
.app-title { font-size: 0.92rem; width:210px; font-weight: 700; color: var(--text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.app-subtitle { font-size: 0.8rem; color: var(--text-secondary); font-weight: 400; }

.upload-zone {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 340px;
    margin: 20px 24px;
    border: 2.5px dashed #d5d5cc;
    border-radius: var(--radius);
    cursor: pointer;
    transition: all var(--transition);
    background: #fdfdfb;
    position: relative;
    overflow: hidden;
}
.upload-zone:hover { border-color: var(--green); background: #f9fdf7; }
.upload-zone.drag-over { border-color: var(--green); background: var(--green-light); box-shadow: inset 0 0 60px rgba(60,176,67,0.06); border-style: solid; }
.upload-zone.has-image {
    min-height: auto;
    padding: 8px 14px;
    margin: 0;
    border: none;
    border-radius: 0;
    cursor: default;
    background: transparent;
    flex-direction: row;
    gap: 10px;
    justify-content: flex-start;
    border-bottom: 1px solid var(--border);
}
.upload-icon { width: 56px; height: 56px; border-radius: 50%; background: #f0f0ea; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; transition: all var(--transition); }
.upload-zone:hover .upload-icon { background: #e2f0e0; }
.upload-zone.has-image .upload-icon { width: 34px; height: 34px; margin-bottom: 0; flex-shrink: 0; }
.upload-icon svg { width: 26px; height: 26px; fill: #999; transition: fill var(--transition); }
.upload-zone:hover .upload-icon svg { fill: var(--green); }
.upload-text { font-size: 0.95rem; font-weight: 600; color: var(--text); }
.upload-hint { font-size: 0.78rem; color: #999; margin-top: 4px; }
.upload-zone.has-image .upload-text { font-size: 0.82rem; font-weight: 500; color: var(--text-secondary); }
.upload-zone.has-image .upload-hint { display: none; }
.btn-reupload {
    display: none;
    font-size: 0.78rem;
    padding: 7px 14px;
    border-radius: 20px;
    border: 1px solid var(--border);
    background: #fff;
    cursor: pointer;
    color: var(--text-secondary);
    transition: all var(--transition);
    white-space: nowrap;
    font-family: var(--font);
}
.upload-zone.has-image .btn-reupload { display: inline-block; }
.btn-reupload:hover { border-color: var(--green); color: var(--green); background: var(--green-light); }

.canvas-wrapper {
    display: none;
    position: relative;
    justify-content: center;
    align-items: center;
    padding: 6px;
    background: #fcfcf9;
    border-bottom: 1px solid var(--border);
    cursor: none;
}
.canvas-wrapper.active { display: flex; }
.canvas-stack { position: relative; display: inline-block; line-height: 0; border-radius: 4px; overflow: hidden; box-shadow: var(--shadow-sm); border: 1px solid #e8e8e0;}
canvas { display: block; max-width: 100%; height: auto; }

.toolbar {
    display: none;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 14px 20px;
    background: #fafaf7;
    border-bottom: 1px solid var(--border);
}
.toolbar.active { display: flex; }
.tool-group { display: flex; align-items: center; gap: 6px; padding: 4px 8px; background: #fff; border-radius: 22px; border: 1px solid var(--border); box-shadow: var(--shadow-sm); }
.tool-label { font-size: 0.75rem; color: var(--text-secondary); font-weight: 500; white-space: nowrap; padding: 0 4px; }
.btn-tool {
    width: 34px; height: 34px; border-radius: 50%; border: 2px solid transparent;
    cursor: pointer; display: flex; align-items: center; justify-content: center;
    transition: all var(--transition); background: #f5f5f0; flex-shrink: 0;
}
.btn-tool:hover { background: #eee; }
.btn-tool.active-tool { border-color: var(--green); background: var(--green-light); box-shadow: 0 0 0 4px rgba(60,176,67,0.10); }
.btn-tool .dot { width: 14px; height: 14px; border-radius: 50%; flex-shrink: 0; }
.dot-green { background: #3cb043; }
.dot-erase { background: #fff; border: 2px solid #d0d0c8; width: 12px; height: 12px; }

.brush-size-slider {
    -webkit-appearance: none; width: 80px; height: 6px;
    border-radius: 3px; background: #e0e0d8; outline: none; cursor: pointer;
}
.brush-size-slider::-webkit-slider-thumb {
    -webkit-appearance: none; width: 26px; height: 26px; border-radius: 50%;
    background: #fff; border: 2px solid var(--green); cursor: pointer;
    box-shadow: 0 1px 4px rgba(0,0,0,0.12); transition: all var(--transition);
}
.brush-size-val { font-size: 0.78rem; font-weight: 600; color: var(--text); min-width: 28px; text-align: center; }

.btn-action {
    padding: 9px 17px; border-radius: 20px; border: 1px solid var(--border);
    cursor: pointer; font-size: 0.82rem; font-weight: 600; letter-spacing: 0.01em;
    transition: all var(--transition); background: #fff; color: var(--text);
    white-space: nowrap; font-family: var(--font); display: flex; align-items: center; gap: 5px;
    box-shadow: var(--shadow-sm);
}
.btn-action:hover { background: #f7f7f2; border-color: #c0c0b8; transform: translateY(-1px); box-shadow: var(--shadow); }
.btn-action:active { transform: scale(0.97); }
.btn-action.undo-btn { color: #5a5a52; }
.btn-action.reset-btn { color: #b55; border-color: #f0d0d0; }
.btn-action.reset-btn:hover { background: var(--red-light); border-color: #e0b0b0; }
.btn-action.submit-btn {
    background: var(--green); color: #fff; border: none; font-weight: 700;
    padding: 10px 22px; box-shadow: 0 3px 14px rgba(60,176,67,0.35);
}
.btn-action.submit-btn:hover { background: #35963d; box-shadow: 0 6px 22px rgba(60,176,67,0.45); transform: translateY(-2px); }
.btn-action:disabled { opacity: 0.45; cursor: not-allowed; pointer-events: none; filter: grayscale(15%); }
.btn-action .badge { background: rgba(0,0,0,0.08); border-radius: 10px; padding: 2px 8px; font-size: 0.7rem; font-weight: 700; }

.status-bar {
    display: none; align-items: center; gap: 8px; padding: 9px 20px;
    font-size: 0.75rem; color: var(--text-secondary); background: #fdfdfb;
    border-top: 1px solid var(--border);
}
.status-bar.active { display: flex; }
.status-dot { width: 8px; height: 8px; border-radius: 50%; background: #ccc; flex-shrink: 0; }
.status-dot.modified { background: #f0a030; box-shadow: 0 0 6px rgba(240,160,48,0.5); }
.status-dot.clean { background: #a0c0a0; }

.toast {
    position: fixed; top: 24px; left: 50%; transform: translateX(-50%) translateY(-120px);
    background: #2c2c2c; color: #fff; padding: 12px 22px; border-radius: 25px;
    font-size: 0.85rem; font-weight: 600; z-index: 999; pointer-events: none;
    transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    box-shadow: 0 8px 28px rgba(0,0,0,0.25); font-family: var(--font);
}
.toast.show { transform: translateX(-50%) translateY(0); }
.toast.success { background: #2e7d32; }
.toast.warning { background: #e67e22; }
#objet_close{position:absolute; right:0; font-size:26px; font-size:26px;}


#objectDwMsg,#cutoutDwMsg{
    margin-top:10px; color:#a99e9e; display:none;
}
