/* 主页图标管理（配置页「图标」栏）。配合 icon-editor.js 使用 */

.ic-list{display:flex;flex-direction:column}
.ic-row{display:grid;grid-template-columns:48px 1fr auto auto;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f1eefb}
.ic-row:last-child{border-bottom:none}
.ic-name{font-size:14px;color:#374151;font-weight:500;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ic-name small{display:block;font-size:11px;color:#9ca3af;font-weight:400;margin-top:2px}

/* 缩略图：和主页图标同一套画法（毛玻璃底 + tint + 字），自定义图同样放大 115% */
.ic-thumb{
  width:48px;height:48px;border-radius:11px;position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  font-size:15px;font-weight:600;color:#1a3a5c;
  background:rgba(255,255,255,.9) center/115% no-repeat;
  box-shadow:0 2px 8px rgba(100,160,220,.18),0 1px 2px rgba(0,0,0,.05);
  border:0.5px solid rgba(26,58,92,.06);
}
.ic-thumb .ic-tint{position:absolute;inset:0;opacity:.22}
.ic-thumb span{position:relative}

/* 裁剪层 */
.ic-crop{
  position:fixed;inset:0;z-index:300;display:none;flex-direction:column;
  background:#15131c;color:#fff;touch-action:none;
  padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);
}
.ic-crop.show{display:flex;animation:fadeIn .18s ease}
.ic-crop-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px}
.ic-crop-bar button{
  background:none;border:none;color:rgba(255,255,255,.7);font-size:15px;font-family:inherit;
  padding:8px 6px;cursor:pointer;-webkit-tap-highlight-color:transparent;
}
.ic-crop-bar .ic-ok{color:#c4b5fd;font-weight:600}
.ic-crop-bar .ic-ok:disabled{opacity:.4}
.ic-crop-title{font-size:14px;color:rgba(255,255,255,.55)}

.ic-stage{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;min-height:0}
.ic-frame{
  position:relative;overflow:hidden;touch-action:none;cursor:grab;
  width:min(72vw,300px);height:min(72vw,300px);
  border-radius:22.8%; /* 主页 70px 图标 16px 圆角，按比例放大 */
  background:rgba(255,255,255,.08);
  box-shadow:0 0 0 1px rgba(255,255,255,.18),0 20px 60px rgba(0,0,0,.5);
}
.ic-frame:active{cursor:grabbing}
.ic-frame img{
  position:absolute;left:0;top:0;transform-origin:0 0;
  max-width:none;user-select:none;-webkit-user-select:none;pointer-events:none;
}
.ic-tip{font-size:12px;color:rgba(255,255,255,.4)}

.ic-zoom{display:flex;align-items:center;gap:14px;width:min(78vw,320px);padding-bottom:28px}
.ic-zoom span{font-size:12px;color:rgba(255,255,255,.45);flex-shrink:0}
.ic-zoom input{flex:1;accent-color:#a78bfa}
