.fc-tool{max-width:820px;margin:2rem auto;font-family:inherit;background:#fff;border-radius:20px;box-shadow:0 1px 2px rgb(17 24 39 / .04),0 12px 32px rgb(67 56 202 / .10);border:1px solid #ECECF3;padding:1.75rem;position:relative;overflow:hidden}.fc-tool::before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#4338CA,#7C3AED,#059669)}.fc-upload-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;border:2px dashed #c7c7d1;border-radius:16px;padding:3rem 1.5rem;cursor:pointer;transition:border-color .2s,background .2s,transform .2s;text-align:center}.fc-upload-box:hover{border-color:#4338CA;background:#EEF2FF;transform:translateY(-2px)}.fc-upload-box svg{width:30px;height:30px;padding:17px;box-sizing:content-box;border-radius:50%;background:linear-gradient(135deg,#4338CA,#7C3AED);color:#fff;box-shadow:0 8px 20px rgb(67 56 202 / .35);animation:fc-pulse 2.4s ease-in-out infinite}@keyframes fc-pulse{0%,100%{box-shadow:0 8px 20px rgb(67 56 202 / .35)}50%{box-shadow:0 8px 26px rgb(67 56 202 / .55)}}.fc-upload-title{font-size:1.2rem;font-weight:800;color:#1F2937}.fc-upload-sub{font-size:.88rem;color:#666;max-width:360px;line-height:1.45}.fc-editor-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width:720px){.fc-editor-grid{grid-template-columns:1fr 300px}}.fc-canvas-wrap{position:relative;background:linear-gradient(180deg,#F5F5FA,#EFEFF6);border-radius:14px;display:flex;align-items:center;justify-content:center;padding:1.5rem 1rem 2.25rem}.fc-canvas{max-width:100%;touch-action:none;cursor:grab;border-radius:6px;box-shadow:0 0 0 1px rgb(0 0 0 / .08),0 6px 20px rgb(0 0 0 / .08);background:#fff}.fc-canvas:active{cursor:grabbing}.fc-canvas-hint{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-size:.75rem;color:#888}.fc-controls{display:flex;flex-direction:column;gap:1.1rem}.fc-field{display:flex;flex-direction:column;gap:.4rem}.fc-field label{font-size:.85rem;font-weight:700;color:#222}.fc-field select{width:100%;padding:.6rem .7rem;border-radius:10px;border:1.5px solid #E2E2EC;font-size:.9rem;background:#fff;transition:border-color .15s}.fc-field select:focus{outline:none;border-color:#4338CA}.fc-field input[type=range]{width:100%;accent-color:#4338CA}.fc-bg-field label{font-weight:500;display:flex;align-items:center;gap:.4rem;font-size:.88rem}.fc-bg-field input[type=checkbox]{accent-color:#4338CA;width:16px;height:16px}.fc-hint{font-size:.75rem;color:#777;line-height:1.35}.fc-spec-box{background:linear-gradient(135deg,#EEF2FF,#F5F0FF);border-radius:12px;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.2rem;border-left:4px solid #4338CA;position:relative}.fc-spec-box::before{content:'\2713';position:absolute;top:.7rem;right:.8rem;width:20px;height:20px;border-radius:50%;background:#059669;color:#fff;font-size:.7rem;font-weight:900;display:flex;align-items:center;justify-content:center}.fc-spec-box strong{font-size:1.08rem;color:#1F2937}.fc-spec-box span{font-size:.8rem;color:#666}.fc-btn-primary,.fc-btn-secondary{border:none;border-radius:10px;padding:.9rem 1.1rem;font-size:.95rem;font-weight:700;cursor:pointer;transition:background .15s,transform .15s,box-shadow .15s;display:flex;align-items:center;justify-content:center;gap:.5rem}.fc-btn-primary{background:linear-gradient(135deg,#4338CA,#6D28D9);color:#fff;box-shadow:0 6px 16px rgb(67 56 202 / .35)}.fc-btn-primary::before{content:'\2b07';font-size:1rem}.fc-btn-primary:hover{background:linear-gradient(135deg,#372DA6,#5B21B6);transform:translateY(-2px);box-shadow:0 10px 22px rgb(67 56 202 / .45)}.fc-btn-primary:active{transform:translateY(0) scale(.98)}.fc-btn-secondary{background:#F8F8FB;color:#444;border:1.5px solid #E2E2EC}.fc-btn-secondary:hover{background:#F0F0F5;border-color:#ccc}