.image-editor-app{position:fixed;top:0;left:0;width:100%;height:100%;background:#0a0a0a;font-family:Poppins,-apple-system,BlinkMacSystemFont,sans-serif;overflow:hidden;touch-action:none}.image-editor-app .close-btn{position:absolute;top:16px;left:16px;width:44px;height:44px;border:none;border-radius:50%;background:#00000080;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;z-index:100}.image-editor-app .close-btn:hover{background:#000000b3;transform:scale(1.05)}.image-editor-app .close-btn:active{transform:scale(.95)}.image-editor-app .close-btn svg{width:24px;height:24px;color:#fff}.image-editor-app .camera-container{position:absolute;top:0;left:0;width:100%;height:100%;display:none;flex-direction:column;background:#000}.image-editor-app .camera-container.active{display:flex}.image-editor-app #cameraVideo{width:100%;height:100%;object-fit:cover}.image-editor-app .camera-controls{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:40px;padding:30px;background:linear-gradient(transparent,#000000b3)}.image-editor-app .camera-btn{background:#ffffff26;border:none;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.image-editor-app .camera-btn:hover{background:#ffffff40;transform:scale(1.05)}.image-editor-app .camera-btn:active{transform:scale(.95)}.image-editor-app .camera-btn svg{width:24px;height:24px;color:#fff}.image-editor-app .shutter-btn{width:72px;height:72px;padding:4px;border:4px solid white}.image-editor-app .shutter-btn:active{transform:scale(.95)}.image-editor-app .shutter-inner{width:100%;height:100%;border-radius:50%;background:transparent}.image-editor-app .editor-container{position:absolute;top:0;left:0;width:100%;height:100%;display:none;grid-template-rows:1fr auto auto}.image-editor-app .editor-container.active{display:grid}.image-editor-app .canvas-wrapper{grid-row:1 / -1;grid-column:1;position:relative;overflow:hidden;background:#0a0a0a;cursor:crosshair}.image-editor-app .canvas-wrapper canvas{position:absolute;top:0;left:0}.image-editor-app #drawCanvas{z-index:2}.image-editor-app .text-elements{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;pointer-events:none}.image-editor-app .text-element{position:absolute;pointer-events:auto;cursor:grab;user-select:none;touch-action:manipulation}.image-editor-app .text-element:hover{cursor:grab}.image-editor-app .text-element.dragging{opacity:.9;cursor:grabbing}.image-editor-app .text-element.editing-hidden{visibility:hidden;pointer-events:none}.image-editor-app .text-content{background:#0009;color:#fff;padding:10px 12px;font-weight:700;line-height:1.3;min-height:1.2em;outline:none;text-align:left;word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;width:100%;box-sizing:border-box;font-size:16px;touch-action:manipulation;-webkit-text-size-adjust:100%}.image-editor-app .text-input-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:500;display:none}.image-editor-app .text-input-modal.active{display:block}.image-editor-app .text-input-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:transparent}.image-editor-app .text-input-container{position:absolute;z-index:1}.image-editor-app .text-input-box{width:100%;background:#0009;padding:10px 12px}.image-editor-app .text-input-box input{width:100%;background:transparent;border:none;outline:none;color:#fff;font-family:Poppins,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;font-weight:700;text-align:left;caret-color:#fff}.image-editor-app .text-input-box input::placeholder{color:#fff6}.image-editor-app .text-input-hint{text-align:center;color:#fff;font-size:16px;margin-top:8px;font-weight:500}.image-editor-app .toolbar{grid-row:2;grid-column:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:#14141480;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.1);overflow:visible;position:relative;z-index:10}.image-editor-app .toolbar::-webkit-scrollbar{display:none}.image-editor-app .tool-btn{flex-shrink:0;width:44px;height:44px;border:none;border-radius:12px;background:transparent;color:#fff9;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.image-editor-app .tool-btn:hover{background:#ffffff1a;color:#fff}.image-editor-app .tool-btn.active{background:#fff;color:#0a0a0a}.image-editor-app .canvas-wrapper.tool-text{cursor:text}.image-editor-app .canvas-wrapper.tool-draw{cursor:crosshair}.image-editor-app .tool-btn svg{width:22px;height:22px}.image-editor-app .divider{width:1px;height:28px;background:#ffffff26;flex-shrink:0}.image-editor-app .color-picker-wrapper{position:relative;flex-shrink:0}.image-editor-app .color-dot-btn{width:40px;height:40px;border:none;border-radius:50%;background:#ffffff1a;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0}.image-editor-app .color-dot-btn:hover{background:#fff3;transform:scale(1.05)}.image-editor-app .color-dot-btn:active{transform:scale(.95)}.image-editor-app .color-dot-preview{width:24px;height:24px;border-radius:50%;border:2px solid rgba(255,255,255,.5);display:block;transition:background .2s}.image-editor-app .color-popover{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%) scale(.8);display:flex;gap:8px;padding:10px 14px;background:#1e1e1ef2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:100px;border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 24px #00000080;opacity:0;pointer-events:none;transition:all .2s ease;z-index:1000}.image-editor-app .color-popover.active{opacity:1;pointer-events:auto;transform:translate(-50%) scale(1)}.image-editor-app .color-popover:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:12px;height:12px;background:#1e1e1ef2;border-right:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}.image-editor-app .color-pop-btn{width:32px;height:32px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .15s;flex-shrink:0;padding:0}.image-editor-app .color-pop-btn:hover{transform:scale(1.15)}.image-editor-app .color-pop-btn.active{border-color:#fff;box-shadow:0 0 0 2px #ffffff4d}.image-editor-app .size-section{display:flex;flex-direction:column;align-items:center;gap:2px}.image-editor-app .size-label{font-size:10px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.image-editor-app .size-controls{display:flex;align-items:center;gap:8px}.image-editor-app .size-btn{width:28px;height:28px;border:none;border-radius:8px;background:#ffffff1a;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.image-editor-app .size-btn:hover{background:#fff3}.image-editor-app .size-btn:active{background:#ffffff4d}.image-editor-app .size-value{font-size:14px;font-weight:600;color:#fff;min-width:24px;text-align:center}.image-editor-app .delete-btn{color:#ff3b5c!important}.image-editor-app .delete-btn:hover{background:#ff3b5c33!important}.image-editor-app .editor-actions{grid-row:3;grid-column:1;position:relative;z-index:10;display:flex;gap:12px;padding:16px;background:#14141480;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.1)}.image-editor-app .action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.image-editor-app .action-btn svg{width:20px;height:20px}.image-editor-app .retake-btn{background:#ffffff1a;color:#fff}.image-editor-app .retake-btn:hover{background:#fff3}.image-editor-app .retake-btn:active{background:#ffffff26}.image-editor-app .save-btn{background:#f7f402;color:#0a0a0a}.image-editor-app .save-btn:hover{transform:scale(1.02)}.image-editor-app .save-btn:active{transform:scale(.98)}.image-editor-app .toast{position:fixed;bottom:120px;left:50%;transform:translate(-50%) translateY(20px);background:#000000e6;color:#fff;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:500;opacity:0;transition:opacity .3s ease,transform .3s ease;pointer-events:none;z-index:1000}.image-editor-app .toast.show{opacity:1;transform:translate(-50%) translateY(0)}.image-editor-app .loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:none;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:2000;color:#fff;font-size:16px}.image-editor-app .loading-overlay.active{display:flex}.image-editor-app .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:#00d4ff;border-radius:50%;animation:image-editor-spin .8s linear infinite}@keyframes image-editor-spin{to{transform:rotate(360deg)}}@media(max-width:480px){.image-editor-app .close-btn{top:12px;left:12px;width:40px;height:40px}.image-editor-app .close-btn svg{width:20px;height:20px}.image-editor-app .toolbar{padding:10px 12px;gap:6px}.image-editor-app .tool-btn{width:40px;height:40px}.image-editor-app .tool-btn svg{width:20px;height:20px}.image-editor-app .color-dot-btn{width:36px;height:36px}.image-editor-app .color-dot-preview{width:20px;height:20px}.image-editor-app .color-pop-btn{width:28px;height:28px}.image-editor-app .color-popover{gap:6px;padding:8px 12px}.image-editor-app .camera-controls{gap:30px;padding:20px}.image-editor-app .shutter-btn{width:64px;height:64px}.image-editor-app .camera-btn{width:44px;height:44px}.image-editor-app .editor-actions{padding:12px;gap:10px}.image-editor-app .action-btn{padding:12px 16px;font-size:14px}.image-editor-app .text-content{padding:8px 10px}}@supports (padding-top: env(safe-area-inset-top)){.image-editor-app .close-btn{top:calc(16px + env(safe-area-inset-top))}.image-editor-app .camera-controls{padding-bottom:calc(30px + env(safe-area-inset-bottom))}.image-editor-app .editor-actions{padding-bottom:calc(16px + env(safe-area-inset-bottom))}}
