.photo-editor-dialog[open]{position:fixed;inset:0;margin:0;padding:0;width:100%;max-width:none;height:100dvh;max-height:none;border:0;border-radius:0;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;background:#f5f3f7;color:#2b2037;font:14px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;overscroll-behavior:contain}
.photo-editor-dialog::backdrop{background:#21172cdd}
.photo-editor-dialog *{box-sizing:border-box}
.photo-editor-dialog [hidden]{display:none!important}
.photo-editor-dialog button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;margin:0;padding:8px 12px;border:1px solid transparent;border-radius:12px;background:transparent;color:inherit;font:inherit;font-weight:550;line-height:1.2;letter-spacing:normal;text-transform:none;cursor:pointer;box-shadow:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.photo-editor-dialog button:disabled{opacity:.3;cursor:default}
.photo-editor-dialog button:not(:disabled):hover{background:#eee8f4}
.photo-editor-dialog :focus-visible{outline:3px solid #b99acf;outline-offset:2px}
.photo-editor-dialog svg{width:22px;height:22px;flex:none;pointer-events:none}
.photo-editor-dialog .photo-editor-head{display:flex;flex:none;align-items:center;gap:10px;min-height:66px;padding:8px max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left));padding-top:max(8px,env(safe-area-inset-top));background:#fff;border-bottom:1px solid #e9e4ef;z-index:1}
.photo-editor-dialog .photo-editor-head h2{margin:0;color:#2b2037;font:600 16px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:0}
.photo-editor-dialog .photo-editor-history{display:flex;gap:2px;margin-left:auto}
.photo-editor-dialog .photo-editor-icon{padding:10px;color:#776684}
.photo-editor-dialog [data-save],.photo-editor-dialog [data-crop]{background:#66358a;color:#fff;min-width:96px}
.photo-editor-dialog [data-save]:not(:disabled):hover,.photo-editor-dialog [data-crop]:not(:disabled):hover{background:#51256f}
.photo-editor-dialog .photo-editor-stage{position:relative;flex:1;min-height:60px;overflow:hidden;touch-action:none;background:#eae7ee;isolation:isolate}
.photo-editor-dialog canvas{position:absolute;top:0;left:0;display:block;max-width:none;max-height:none;transform-origin:0 0;touch-action:none;cursor:crosshair;box-shadow:0 2px 24px #23123215}
.photo-editor-dialog .can-pan,.photo-editor-dialog .can-pan canvas{cursor:grab}
.photo-editor-dialog .panning,.photo-editor-dialog .panning canvas{cursor:grabbing}
.photo-editor-dialog .photo-editor-zoom{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;gap:2px;padding:3px;background:#ffffffed;border:1px solid #fff;border-radius:14px;box-shadow:0 3px 16px #2b1b3a12;z-index:1;touch-action:manipulation}
.photo-editor-dialog .photo-editor-zoom button{padding:6px;min-width:40px;min-height:40px;font-size:21px}
.photo-editor-dialog [data-fit]{flex-direction:column;gap:0;min-width:62px!important;font-size:11px!important}
.photo-editor-dialog [data-fit] output{font:600 12px/1.3 system-ui,sans-serif;font-variant-numeric:tabular-nums}
.photo-editor-dialog [data-fit] span{color:#8b7d96;font-size:9px}
.photo-editor-dialog .photo-editor-bottom{flex:none;background:#fff;border-top:1px solid #e9e4ef;padding:8px max(12px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));z-index:1}
.photo-editor-dialog .photo-editor-options{display:flex;align-items:center;justify-content:center;gap:10px 20px;flex-wrap:wrap;max-width:1000px;margin:0 auto 8px;min-height:24px}
.photo-editor-dialog .photo-editor-hint{margin:0;font:12px/1.4 system-ui,sans-serif;color:#83738e;text-align:center}
.photo-editor-dialog .photo-editor-draw-options{display:flex;align-items:center;justify-content:center;gap:18px}
.photo-editor-dialog .photo-editor-colors{display:flex;align-items:center;gap:2px}
.photo-editor-dialog [data-swatch]{position:relative;min-width:32px;width:32px;min-height:40px;height:40px;padding:6px;background:transparent;border:0}
.photo-editor-dialog [data-swatch]::before{content:"";width:20px;height:20px;border-radius:50%;background:var(--swatch);border:1px solid #0002}
.photo-editor-dialog [data-swatch][aria-pressed=true]::before{outline:2px solid #84609f;outline-offset:3px}
.photo-editor-dialog .photo-editor-custom-color{position:relative;display:block;width:32px;height:40px;padding:8px 4px;margin:0}
.photo-editor-dialog .photo-editor-custom-color::before{content:"";display:block;width:24px;height:24px;border-radius:50%;background:conic-gradient(#e32636,#ffcf33,#59bc9e,#648fea,#b477dd,#e32636);border:3px solid #fff;box-shadow:0 0 0 1px #d9cce4}
.photo-editor-dialog [data-color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.photo-editor-dialog .photo-editor-size{display:flex;align-items:center;gap:8px;font-size:11px;color:#83738e;margin:0}
.photo-editor-dialog [data-size]{width:72px;min-height:36px;padding:0;accent-color:#66358a;cursor:pointer}
.photo-editor-dialog .photo-editor-text-actions{display:flex;gap:8px;align-items:center}.photo-editor-dialog [data-text-apply]{background:#66358a;color:#fff}.photo-editor-dialog.editing-text .photo-editor-zoom{display:none}
.photo-editor-dialog [data-text]{position:absolute;inset:0 auto auto 0;display:block;min-height:0;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;outline:2px dashed #66358a;outline-offset:3px;background:#ffffff38;box-shadow:none;resize:none;overflow:hidden;transform-origin:0 0;white-space:pre-wrap;word-break:break-all;touch-action:auto;z-index:2;text-shadow:0 1px #fff,1px 0 #fff,0 -1px #fff,-1px 0 #fff;caret-color:#2b2037}
.photo-editor-dialog .photo-editor-tools{display:flex;justify-content:center;gap:6px;max-width:560px;margin:0 auto;padding:0}
.photo-editor-dialog .photo-editor-tools button{flex:1;flex-direction:column;gap:5px;min-height:62px;padding:8px 12px;color:#83738e;font-size:11px;font-weight:500}
.photo-editor-dialog .photo-editor-tools button[aria-pressed=true]{background:#f0e7f7;color:#633285}
@media(max-width:600px){
 .photo-editor-dialog .photo-editor-head{min-height:60px;gap:4px;padding-left:8px;padding-right:10px}
 .photo-editor-dialog .photo-editor-head h2{font-size:14px}
 .photo-editor-dialog .photo-editor-history{gap:0}
 .photo-editor-dialog .photo-editor-icon{min-width:40px;padding:8px}
 .photo-editor-dialog [data-save]{min-width:76px;padding:10px;font-size:13px}
 .photo-editor-dialog .photo-editor-bottom{padding-top:8px}
 .photo-editor-dialog .photo-editor-options{gap:4px;margin-bottom:6px}
 .photo-editor-dialog .photo-editor-hint{flex-basis:100%;font-size:11px}
 .photo-editor-dialog .photo-editor-tools{gap:3px}
 .photo-editor-dialog .photo-editor-tools button{min-width:0;min-height:58px;padding:7px 3px;font-size:10px}
 .photo-editor-dialog .photo-editor-tools svg{width:21px;height:21px}
 .photo-editor-dialog .photo-editor-zoom{right:10px;bottom:10px;transform:scale(.93);transform-origin:right bottom}
 .photo-editor-dialog [data-crop]{min-height:36px;font-size:12px}
 .photo-editor-dialog.editing-text .photo-editor-tools{display:none}
}
@media(max-height:500px) and (min-width:601px){
 .photo-editor-dialog .photo-editor-head{min-height:48px;padding-top:2px;padding-bottom:2px}
 .photo-editor-dialog .photo-editor-bottom{display:flex;align-items:center;gap:12px;padding-top:4px;padding-bottom:4px}
 .photo-editor-dialog .photo-editor-options{flex:1;gap:4px;margin:0}
 .photo-editor-dialog .photo-editor-hint{display:none}
 .photo-editor-dialog .photo-editor-tools{flex:1;gap:2px}
 .photo-editor-dialog .photo-editor-tools button{min-height:50px}
}

.photo-editor-dialog [data-text-move]{position:absolute;z-index:3;background:#fff;color:#66358a;border:1px solid #ded3e6;box-shadow:0 2px 10px #23123220;touch-action:none;cursor:move}
