 .ir-tool{display:block!important;width:100%!important;max-width:100%!important;margin:40px auto!important;padding:0 20px!important;box-sizing:border-box!important;float:none!important;position:relative!important;left:auto!important;right:auto!important}.ir-card{display:block!important;width:100%!important;max-width:1050px!important;margin:0 auto!important;padding:30px!important;box-sizing:border-box!important;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 8px 28px rgba(0,0,0,.07);color:#172033;font-family:Arial,Helvetica,sans-serif}.ir-card h2{text-align:center;margin:0 0 8px;font-size:34px}.ir-subtitle{text-align:center;color:#667085;margin:0 0 28px}.ir-upload{border:2px dashed #9aa4b2;border-radius:14px;padding:35px;text-align:center;background:#fbfcfe;cursor:pointer}.ir-upload input{display:none}.ir-icon{font-size:42px}.ir-upload h3{margin:8px 0}.ir-upload p{color:#667085;margin:8px 0 18px}.ir-btn{display:inline-block;border:0;border-radius:8px;padding:12px 20px;font-weight:700;cursor:pointer}.ir-blue{background:#2563eb;color:#fff}.ir-green{background:#16a34a;color:#fff}.ir-gray{background:#e5e7eb;color:#344054}.ir-main{display:none;margin-top:25px}.ir-controls{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:25px}.ir-field label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}.ir-field input,.ir-field select{width:100%;padding:11px;border:1px solid #d0d5dd;border-radius:8px;font-size:15px;box-sizing:border-box}.ir-check{display:flex;align-items:end;padding-bottom:11px;gap:7px;font-size:14px}.ir-work{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:25px}.ir-stage{min-height:450px;background:#eef1f5;border:1px solid #dfe3e8;border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:auto;padding:30px}.ir-frame{position:relative;display:inline-block;line-height:0;box-shadow:0 8px 25px rgba(0,0,0,.18);background:#fff}.ir-frame img{display:block;width:100%;height:100%;object-fit:contain;user-select:none;pointer-events:none}.ir-handle{position:absolute;width:16px;height:16px;background:#2563eb;border:2px solid #fff;border-radius:50%;z-index:3}.ir-e{right:-8px;top:50%;margin-top:-8px;cursor:e-resize}.ir-s{bottom:-8px;left:50%;margin-left:-8px;cursor:s-resize}.ir-se{right:-8px;bottom:-8px;cursor:nwse-resize}.ir-side{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:18px}.ir-side h3{margin-top:0}.ir-info{font-size:13px;color:#667085;line-height:1.6}.ir-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.ir-actions .ir-btn{flex:1;min-width:110px}.ir-status{margin-top:18px;padding:12px;border-radius:8px;display:none}.ir-status.ok{display:block;background:#dcfce7;color:#166534}.ir-status.err{display:block;background:#fee2e2;color:#991b1b}@media(max-width:800px){.ir-work{grid-template-columns:1fr}.ir-controls{grid-template-columns:1fr 1fr}}@media(max-width:520px){.ir-card{padding:20px}.ir-tool{padding:0 10px!important}.ir-controls{grid-template-columns:1fr}.ir-actions{flex-direction:column}.ir-actions>*{width:100%}}


.ir-sizebar{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end;margin:22px 0 8px;padding:18px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px}
.ir-sizebar label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
.ir-sizebar input{width:100%;padding:11px;border:1px solid #d0d5dd;border-radius:8px;font-size:15px;box-sizing:border-box;background:#fff}
.ir-check{display:flex;align-items:center;gap:7px;white-space:nowrap;padding-bottom:11px;font-size:14px}
.ir-check input{width:auto!important}
.ir-drag-help{text-align:center;color:#667085;font-size:13px;margin:10px 0 20px}
.ir-frame{position:relative;display:inline-block;line-height:0;box-shadow:0 8px 25px rgba(0,0,0,.18);background:#fff}
.ir-frame img{display:block;width:100%;height:100%;object-fit:fill;user-select:none;pointer-events:none}
.ir-crop-box{position:absolute;left:0;top:0;width:100%;height:100%;border:2px solid #2563eb;box-sizing:border-box;z-index:2;pointer-events:none}
.ir-crop-handle{position:absolute;background:#2563eb;border:2px solid #fff;z-index:4;pointer-events:auto;box-sizing:border-box}
.ir-crop-handle.ir-n,.ir-crop-handle.ir-s{width:46px;height:12px;border-radius:7px;left:50%;margin-left:-23px}
.ir-crop-handle.ir-e,.ir-crop-handle.ir-w{width:12px;height:46px;border-radius:7px;top:50%;margin-top:-23px}
.ir-crop-handle.ir-ne,.ir-crop-handle.ir-se,.ir-crop-handle.ir-sw,.ir-crop-handle.ir-nw{width:16px;height:16px;border-radius:50%}
.ir-crop-handle.ir-n{left:50%;top:-7px;cursor:n-resize}
.ir-crop-handle.ir-e{right:-7px;cursor:e-resize}
.ir-crop-handle.ir-s{left:50%;bottom:-7px;cursor:s-resize}
.ir-crop-handle.ir-w{left:-7px;cursor:w-resize}
.ir-crop-handle.ir-ne{right:-7px;top:-7px;cursor:ne-resize}
.ir-crop-handle.ir-se{right:-7px;bottom:-7px;cursor:nwse-resize}
.ir-crop-handle.ir-sw{left:-7px;bottom:-7px;cursor:sw-resize}
.ir-crop-handle.ir-nw{left:-7px;top:-7px;cursor:nwse-resize}
@media(max-width:700px){.ir-sizebar{grid-template-columns:1fr 1fr}.ir-check{padding-bottom:0}}
@media(max-width:480px){.ir-sizebar{grid-template-columns:1fr}}

.ir-sizebar{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end;margin:22px 0 8px;padding:18px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px}
.ir-sizebar label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
.ir-sizebar input{width:100%;padding:11px;border:1px solid #d0d5dd;border-radius:8px;font-size:15px;box-sizing:border-box;background:#fff}
.ir-check{display:flex;align-items:center;gap:7px;white-space:nowrap;padding-bottom:11px;font-size:14px}
.ir-check input{width:auto!important}
.ir-drag-help{text-align:center;color:#667085;font-size:13px;margin:10px 0 20px}
.ir-frame{position:relative;display:block;margin:auto;line-height:0;box-shadow:0 8px 25px rgba(0,0,0,.18);background:#fff}
.ir-frame img{display:block;width:100%;height:100%;object-fit:fill;user-select:none;pointer-events:none}
@media(max-width:700px){.ir-sizebar{grid-template-columns:1fr 1fr}.ir-check{padding-bottom:0}}
@media(max-width:480px){.ir-sizebar{grid-template-columns:1fr}}
