/* Mobile stamp editing: preview remains editable in context, even with the software keyboard. */
.stamp-mobile-dock{display:none}
.stamp-mobile-preview-dialog{border:1px solid #cadbd7;border-radius:18px;padding:16px;background:#fff;color:#20372e;max-width:min(94vw,560px);width:94%;box-shadow:0 24px 80px #07130d75}
.stamp-mobile-preview-dialog::backdrop{background:#071b17b5}
.stamp-dialog-header{display:flex;justify-content:space-between;align-items:center;gap:16px}
.stamp-dialog-header button{border:1px solid #bed5c9;background:#fff;border-radius:8px;min-height:44px;padding:8px 15px;font-weight:700;cursor:pointer}
.stamp-mobile-preview-dialog img{display:block;width:min(100%,420px);max-height:65vh;object-fit:contain;margin:12px auto;background:white}
.stamp-mobile-preview-dialog p{text-align:center;font-size:12px;color:#516a60}
@media(max-width:980px){
 .stamp-mobile-dock{position:sticky;top:96px;z-index:19;display:flex;align-items:center;gap:9px;padding:9px 10px;margin:0 0 15px;background:#fffffff5;backdrop-filter:blur(12px);border:1px solid #aecaba;border-radius:14px;box-shadow:0 5px 18px #11362520;min-height:119px;max-height:150px;min-width:0}
 .stamp-mobile-dock img{width:clamp(92px,27vw,118px);height:clamp(92px,27vw,118px);object-fit:contain;flex:none;background:#fff;border:1px solid #e1e9e4;border-radius:8px}
 .stamp-mobile-dock-label{flex:1;min-width:0;display:grid;gap:4px}
 .stamp-mobile-dock-label strong{font-size:12px;line-height:1.25;color:#194d36}
 .stamp-mobile-dock-label small{font-size:11px;line-height:1.25;color:#536b61}
 .stamp-mobile-dock-actions{display:grid;gap:5px;flex:0 0 86px}
 .stamp-mobile-dock-actions button{min-height:44px;padding:6px 5px;border-radius:9px;border:1px solid #277657;font-size:11px;font-weight:750;line-height:1.2;cursor:pointer}
 .stamp-mobile-dock-actions [data-stamp-inline-expand]{background:#eaf4ee;color:#194d36}
 .stamp-mobile-dock-actions [data-stamp-expand]{background:#1b6449;color:#fff}
 .stamp-mobile-dock-actions button:focus-visible,.stamp-dialog-header button:focus-visible{outline:3px solid #1267b2;outline-offset:2px}
 .stamp-mobile-dock.is-enlarged{min-height:166px;max-height:211px}
 .stamp-mobile-dock.is-enlarged img{width:clamp(138px,45vw,185px);height:clamp(138px,45vw,185px)}
 .stamp-mobile-dock.is-enlarged .stamp-mobile-dock-label{display:none}
 .stamp-mobile-typing .stamp-mobile-dock,.stamp-mobile-keyboard .stamp-mobile-dock{min-height:102px;max-height:117px;gap:7px;padding:6px 8px}
 .stamp-mobile-typing .stamp-mobile-dock img,.stamp-mobile-keyboard .stamp-mobile-dock img{width:88px;height:88px}
 .stamp-mobile-typing .stamp-mobile-dock-label small,.stamp-mobile-keyboard .stamp-mobile-dock-label small{display:none}
 .stamp-mobile-typing .stamp-mobile-dock.is-enlarged,.stamp-mobile-keyboard .stamp-mobile-dock.is-enlarged{min-height:142px;max-height:178px}
 .stamp-mobile-typing .stamp-mobile-dock.is-enlarged img,.stamp-mobile-keyboard .stamp-mobile-dock.is-enlarged img{width:clamp(128px,40vw,154px);height:clamp(128px,40vw,154px)}
}
@media(max-width:700px){.stamp-mobile-dock{top:76px}}
@media(max-width:390px){
 .stamp-mobile-dock{gap:6px;padding:7px}
 .stamp-mobile-dock img{width:92px;height:92px}
 .stamp-mobile-dock-actions{flex-basis:80px}
 .stamp-mobile-dock-label strong{font-size:11px}
 .stamp-mobile-dock-label small{display:none}
 .stamp-mobile-dock.is-enlarged img{width:clamp(130px,43vw,164px);height:clamp(130px,43vw,164px)}
}
@media(prefers-reduced-motion:reduce){.stamp-mobile-dock{scroll-behavior:auto}}
